window.onload和$(document).ready()比较

  浏览器在页面加载完毕后,JS通常使用window.onload方法为DOM元素添加事件,而jQuery使用的是$(document).ready()方法。两者功能相似,但也有细微差异,下面简要对比一下两者之间的区别。

window.onload与$(document).ready()对比
  window.load $(document).ready()
执行时机 必须等待网页中所有内容加载完毕后才能执行(包括图片等) 只要网页中的DOM结构绘制完毕就执行(与DOM相关的文件此时可能还未下载完毕)
使用情况

1.不能同时执行多个,若编写多个函数只执行最后一个(前面的被覆盖)。

window.onload = function() test1{

  alert("function1");};

window.onload = function() test2{

  alert("function2");}

最终输出结果为"function2"。

2.如果想实现多个函数的调用,可以创建一个新的函数来包含它们。

window.onload = function(){

  test1();

  test2();

}

 1.能够同时编写多个函数,按注册顺序执行。

$(document).ready(function(){

  test1();

});

$(document).ready(function(){

  test2();

})

两次都输出。

2.如果想实现window.onload一样的功能,调用load()方法。

$(window).load(function(){

  //代码

})

简化  无

 以下两种形式与$(document).ready()等价,但更简洁。

1.$().ready(function(){  //代码 });

2.$(function(){ //代码 });

 

  

 

  全文完,欢迎各位前辈批评指正。

 

posted @ 2016-03-09 10:27  Acelit  阅读(206)  评论(0编辑  收藏  举报