jquery中的$(document).ready()方法和window.onload方法区别

转载 2013年12月04日 20:19:28


大多数情况下,jquery代码的编写,都要求我们将jquery的代码放在

$(document).ready(function(){
      ........jquery代码...........
});

上面的代码和

$().ready(function(){
      ........jquery代码...........
});
$(function(){
      ........jquery代码...........
});

是等同的~~最后一种方式是最简洁的方式,绝大多数情况下我都使用最后一种写法,呵呵~~好记!
注意:有时候我们自己编写的jquery代码出现莫名其妙的问题,看似正常的代码,但是就是在运行的时候出错了,那么请先检查一下你的代码有没有放在$(document).ready()方法中运行。

接下来我们来说说$(document).ready()方法和window.onload方法的区别:
他们的主要的区别有两点:

  1. 执行时机
    window.onload方法是在网页中的所有的元素(包括元素的所有关联文件)都完全加载到浏览器之后才执行。而通过jQuery中的$(document).ready()方法注册的事件处理程序,只要在DOM完全就绪时,就可以调用了,比如一张图片只要<img>标签完成,不用等这个图片加载完成,就可以设置图片的宽高的属性或样式等。
  2. $(document).ready()方法可以多次使用而注册不同的事件处理程序,而window.onload一次只能保存对一个函数的引用,多次绑定函数只会覆盖前面的函数。
    先来看window.onload方法在一个页面上注册两次会是什么样的结果:

    function one(){
    	alert("one");
    }
    function two(){
    	alert("two");
    }
    window.onload = two ;
    window.onload = one ;
    

    上面的代码运行后,会弹出“one”。

    window.onload方法测试

    再来看看$(document).ready()方法分两次调用会是什么结果。

    function one(){
    	alert("one");
    }
    function two(){
    	alert("two");
    }
    $(document).ready(function(){
    	one();
    });
    $(document).ready(function(){
    	two();
    });
    

    上面的代码运行后,会分别弹出“one”和“two”。

    $(document).ready()方法测试

转载自 http://www.skygq.com/2011/02/07/jquery-document-ready-and-windo-onload/

相关文章推荐

jquery中的$(document).ready()方法和window.onload方法区别

大多数情况下,jquery代码的编写,都要求我们将jquery的代码放在 1 $(document).ready(function(){ ...

浅谈JavaScript中的window.onload方法和JQuery中的$(document).ready()方法

浅谈JavaScript中的window.onload方法和JQuery中的$(document).ready()方法

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

jQuery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的。 1.执行时间    ...

【jquery】一、 $(document).ready() 与window.onload的区别

Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的。 1.执行时间 win...

[JQuery]window.onload和$(document).ready的区别

很多同学(包括我)刚接触jQuery时,都搞不清传统的window.onload和jQuery的$(document).ready有什么区别。甚至有人认为这两者其实是一个东西,其实不然。查询资料,基本...

Jquery中$(document).ready()和window.onload的区别

$(document).ready()和window.onload在表单上看都是页面加载时我们就去执行一个函数或动作, 但是在具体的细节上$(document).ready()和window.onl...

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

Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的。 1.执行时间 ...

jQuery $(document).ready() 与JavaScript window.onload的区别

jQuery $(document).ready() Vs JavaScript window.onloadCreated by Yiyi_coding Last edited at 2015年7月...

jquery中的$(document).ready()与window.onload的区别

1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。 $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。 ...
  • dz45693
  • dz45693
  • 2011年11月23日 14:23
  • 2222

js中替换window.onload的方法 document.ready

通常我们想要在页面内容加载完成后运行 JS 时,都会使用 window.onload 来处理,比如:          window.onload = function () {  ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jquery中的$(document).ready()方法和window.onload方法区别
举报原因:
原因补充:

(最多只允许输入30个字)