使用可能包括 document.write 的 src 动态添加脚本标记

2022-08-30 01:09:39

我想在网页中动态包含脚本标签,但是我无法控制它的src,因此src=“source.js”可能看起来像这样。

document.write('<script type="text/javascript">')
document.write('alert("hello world")')
document.write('</script>')
document.write('<p>goodbye world</p>')

现在通常把

<script type="text/javascript" src="source.js"></script>

在头部工作正常,但有没有其他方法可以使用类似的东西动态添加?source.jsinnerHTML

我尝试过的jsfiddle


答案 1
var my_awesome_script = document.createElement('script');

my_awesome_script.setAttribute('src','http://example.com/site.js');

document.head.appendChild(my_awesome_script);

答案 2

您可以使用 document.createElement() 函数,如下所示:

function addScript( src ) {
  var s = document.createElement( 'script' );
  s.setAttribute( 'src', src );
  document.body.appendChild( s );
}