首页 > 代码库 > jquery 的ready() 与window.onload()的区别

jquery 的ready() 与window.onload()的区别

做web开发时常用Jquery中$(document).ready()和JavaScript中的window.onload方法,两者都是要在页面加载完成以后加载的方法,但是这两者还是有很大区别的。最近遇到了这样的问题,查询了多篇文章,做一下总结。

简单来说,要以用以下张表来表示 :

Jquery的ready()与Javascrpit的load()
 window.onload()$(document).ready()
加载时机

  必须等待网页全部加载完毕(包括图片等),然后再执行JS代码

只需要等待网页中的DOM结构加载完毕,就能执行JS代码

执行次数

只能执行一次,如果第二次,那么第一次的执行会被覆盖

可以执行多次,第N次都不会被上一次覆盖

举例

以下代码无法正确执行: 

window.onload = function()  { alert(“text1”);}; window.onload = function()  { alert(“text2”);};  

结果只输出第二个

以下代码正确执行: 

$(document).ready(function(){alert(“Hello”)}); 

$(document).ready(function(){alert(“Hello”)});

结果两次都输出

简写方案无  $(function () {})