【发布时间】:2011-09-29 21:32:36
【问题描述】:
我有一个 javascript 文件被动态添加到页面中。如果我使用 document.write,它可以正常工作:
<html>
<head></head>
<body>
<script type="text/javascript">
var src = 'myDynamicScript.js';
document.write('<scr' + 'ipt type="text/javascript" src="' + src + '"></scr' + 'ipt>');
</script>
</body>
</html>
但是,如果我使用 appendChild,如 this answer 中所述,脚本会被下载,但永远不会运行:
<html>
<head></head>
<body>
<script type="text/javascript">
var src = 'myDynamicScript.js';
var script = document.createElement("script");
script.type = "text/javascript";
script.src = src;
document.body.appendChild(script);
</script>
</body>
</html>
我有一个简单的示例设置here (write) 和here (append)。我应该期望它运行,还是这是已知的行为?如果应该,为什么不呢?
【问题讨论】:
标签: javascript appendchild dynamic-script-loading