jquery中document.ready在两类浏览器中的区别
DOMready的构建方法不再重复,现代浏览器通过DOMContentLoaded来实现,IE通过readystatechange+doScroll来模拟该方法.
类似jquery中的document.ready.该方法在99%的情况下在两类浏览器中表现方式是相同的.
这里来看下1%的情况.
在页面中嵌套了iframe的情况下.
现代浏览器的执行顺序是:
解析index-->index的DOMready-->解析iframe-->iframe的DOMready-->iframe的window.onload-->index的window.onload;
IE的执行顺序是:
解析index-->解析iframe-->iframe的DOMready-->iframe的window.onload-->index的DOMready-->index的window.onload;
所以在使用jquery中的document.ready时需要特别注意标准浏览器在$(document.ready)情况下是无法获取到iframe中的元素的.
因为这个试验代码比较繁琐,大家可以自己尝试,只需在index和iframe中触发DOMready和window.onload时在控制台输出即可.
PS:jquery中document.ready只是构建了DOM树以后触发,如需获取页面中的图片大小,在一些情况下是会取到0的.
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。