在文档完全解析并关闭后,异步加载的脚本可能会运行。因此,您不能
document.write()在这样的脚本中使用(从技术上讲可以,但是它不会做您想要的事情)。
您将需要
document.write()通过创建DOM元素,然后使用
.appendChild()or
.insertBefore()或设置
.innerHTML或某种直接DOM *** 作的机制将它们插入到特定的父级中,从而用显式DOM *** 作替换该脚本中的任何语句。
例如,代替内联脚本中的此类代码:
<div id="container"><script>document.write('<span >Hello</span>');</script></div>
您可以使用它来替换上面的内联脚本,以动态加载脚本:
var container = document.getElementById("container");var content = document.createElement("span");content.style.color = "red";content.innerHTML = "Hello";container.appendChild(content);
或者,如果容器中没有需要附加的其他内容,则可以简单地执行以下 *** 作:
var container = document.getElementById("container");container.innerHTML = '<span >Hello</span>';
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)