2010-01-12 45 views
4

我的JavaScript(比如文件1)需要从我的服务器上获取另一个JS文件(比如文件2),并把它执行完毕的DOM完成渲染之前。文件2实际上是一个使用document.write的广告脚本(例如AdSense)。我注意到,如果我从文件1中创建一个新的脚本和(使用DOM操作方法)追加到DOM的头节点获取文件2,广告正确呈现在Firefox,而不是在IE编写脚本DOM并让它运行之前完成DOM渲染

研究表明,以这种方式动态追加到DOM的脚本可能会在DOM已经渲染后运行,在这种情况下,document.write会覆盖整个页面。我有什么选择?我可以想到这些......这些中的哪一个保证让File 2在完成渲染之前操纵DOM?

1)从文件1 2)XMLHTTP同步调用(不知道这阻止渲染DOM)

帮助:)

+0

你打算接受一个答案还是有什么我失踪? – 2010-01-21 22:39:20

回答

2

同步调用做内文件撰写的文件2脚本标记阻止DOM渲染。

如果你不想阻塞,那么你可以做一个异步调用。

我会使用document.write(),因为它会在那里执行代码。不是在加载任何东西之后。