我尝试使用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)
我想知道是否有任何可用资源描述浏览器的光标如何执行Javascript.
我知道它会在页面加载时加载并执行标记,并且您可以将函数附加到各种窗口事件,但事情变得模糊的是,例如,我通过AJAX检索远程页面并将其内容放入div中.
如果该远程页面必须加载脚本库,例如<script src="anotherscript.js" />何时加载"anotherscript.js"并且其内容正在执行?
如果我在当前页面上包含"anotherscript.js",然后我加载了一些包含此脚本的重复内容的远程内容,会发生什么?它会覆盖原来的吗?如果原始的"anotherscript.js"中有一个var,其值已更改,然后我重新加载该文件...我会丢失原始值还是忽略了第二次包含此脚本?
如果我通过AJAX加载一些程序性的Javascript,它什么时候执行?我做完之后马上mydiv.innerHTML(remoteContent)?还是在此之前执行?