如果我的脚本位于正文末尾,我应该使用DOM就绪函数吗?

Mat*_*chu 8 javascript jquery dom

我知道,在jQuery中,我们被告知要使用$(document).ready()以确保DOM元素已准备好进行交互.我知道如果脚本标签在<head>.中,这肯定适用.如果它们位于<body>所有DOM元素之后,我还应该使用DOM就绪函数吗?有没有我的代码会失败的浏览器?

谢谢!

bob*_*nce 13

<script>之前的块中有一件事你不能做</body>:将DOM内容附加到正文.这是追加相对于解析的问题,导致IE与可怕的"操作中止"一致.

因此,如果您有脚本或插件来执行此操作,则无法在body元素的末尾内联调用它们.否则继续.

它不会在最新的Mozilla,Opera或WebKit浏览器上获得任何东西,因为它们ready无论如何都会在一瞬间激发.它将避免在IE中出现令人不愉快但基本上无害的黑客循环,而且对于其他(较旧的或更加模糊的)浏览器而言,它会更快地启动,否则它们会等待onload.

  • 不,IE允许操纵`<script>`元素的包含父元素.因此,如果`<script>`标记位于结束</ body>之前,它可以将内容附加到正文中. (3认同)