【发布时间】:2013-10-16 19:01:38
【问题描述】:
我有一段 JavaScript 代码将在呈现 <body> 时异步调用。我还有一个 JavaScript 文件,它将使用这段代码。这段代码和加载文件的脚本是在外部系统中编写的。无法预测何时将这段代码插入到页面中。我无法更改 JS 文件中的代码。
现在,JS 文件包含创建图像的 document.write 方法。但是,不推荐使用这种方法,因为无法预测写入操作何时发生。例如,如果它在 body 渲染完成和 DOM 加载后运行,则页面内容将被完全重写。 我想确保不会发生上述最坏的情况。如何做到这一点?
【问题讨论】:
-
如果您的代码是异步运行的,那么您不能保证它会在 DOM 加载之前执行。
-
同意克里斯。你不能保证。假设您无法更改 document.write,您可能会将脚本加载到另一个文档中,例如隐藏框架,然后将隐藏文档的书面文本附加到您的可见文档中。这将是一个(肮脏的)工作。
-
@mrhobo,或者-您可以简单地覆盖
document.write,如下所述...
标签: javascript