选择动态添加的脚本

问题描述 投票:0回答:1

如何最好地选择动态添加的脚本?我的代码(头)中有一个脚本与requirejs动态添加在一起。我想选择它,但不能。始终返回NULL

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Example</title>

	<script>
	document.addEventListener('DOMContentLoaded', function(){
           let script = document.querySelector('[data-requiremodule="3.6.5/browser-polyfill"]');
                 console.log('DEBUG START');
                 console.log(script);

         });        
	</script>
</head>
<body>
<h1>
Example
</h1>	



<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.js"></script>
<!-- Adding a script dynamically -->
<script>require.config({"waitSeconds":300,"baseUrl":"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/6to5\/","config":{"i18n":{"locale":"en"}}});require(["3.6.5/browser-polyfill"]);</script>
</body>
</html>

Website with Online Example

编辑1:如果在问题中不清楚,我想获取正在头部动态创建的脚本(使用页面上的inspect元素,请参见)not require.js

我想选择:<script type="text/javascript" charset="utf-8" async="" data-requirecontext="_" data-requiremodule="3.6.5/browser-polyfill" src="https://cdnjs.cloudflare.com/ajax/libs/6to5/3.6.5/browser-polyfill.js"></script>

javascript requirejs
1个回答
0
投票

您的querySelector()调用正在寻找具有data-requiremodule...属性的元素,但是HTML中没有该属性。您可以改用src

来查找脚本

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Example</title>

	<script>
	document.addEventListener('DOMContentLoaded', function(){
           let script = document.querySelector('script[src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.js"]');
                 console.log('DEBUG START');
                 console.log(script);

         });        
	</script>
</head>
<body>
<h1>
Example
</h1>	



<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.js"></script>
<!-- Adding a script dynamically -->
<script>require.config({"waitSeconds":300,"baseUrl":"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/6to5\/","config":{"i18n":{"locale":"en"}}});require(["3.6.5/browser-polyfill"]);</script>
</body>
</html>
© www.soinside.com 2019 - 2024. All rights reserved.