我尝试使用innerHTMLa 将一些脚本加载到页面中<div>.看起来脚本加载到DOM中,但它永远不会被执行(至少在Firefox和Chrome中).有没有办法让脚本在插入时执行innerHTML?
示例代码:
<!DOCTYPE html>
<html>
<body onload="document.getElementById('loader').innerHTML = '<script>alert(\'hi\')<\/script>'">
Shouldn't an alert saying 'hi' appear?
<div id="loader"></div>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
我正在尝试执行以下操作(我正在使用原型库):
var div = document.createElement('div');
div.innerHTML = '<script src="somescript.js"></script>';
$('banner').insert(div);
Run Code Online (Sandbox Code Playgroud)
在IE中,在第二行中设置属性后,div.innerHTML属性始终等于"".
这个片段在一个函数中,它覆盖了外部供应商脚本中的document.write(),这就是为什么我这样做而不是创建一个脚本元素并直接将它附加到div元素.
任何帮助真的很感激,这给了我白发!