原生JS实现document ready以及和window onload的先后顺序(转)

原生JS实现document.ready以及和window.onload的先后顺序

jQuery 里面的文档就绪用法

在jQuery里面,我们可以看到两种写法:

$(function(){}) 和 $(document).ready(function(){}),这两个方法的效果都是一样的,都是在dom文档树加载完之后执行一个函数,(注意,这里面的ready 是 DOM树加载完成,不是onload的页面资源加载完成的)。

ment.ready方法,原生js本身并没有提供 document.ready方法

原生JS实现document ready以及和window onload的先后顺序(转)

window.onload 在没定义方法之前,它只是一个值为null的属性

原生JS实现document ready以及和window onload的先后顺序(转)

document.ready 和 window.onload 的区别是:上面定义的document.ready方法在DOM树加载完成后就会执行,而window.onload是在页面资源(比如图片和媒体资源,它们的加载速度远慢于DOM的加载速度)加载完成之后才执行。也就是说$(document).ready要比window.onload先执行。

验证一下 ready 要比 onload 先执行:

原生JS实现document ready以及和window onload的先后顺序(转)

执行这段代码之后,你会看到浏览器里面会先弹出ready,在弹出onload。