艾Q网

标题: $(document).ready()与window.onload方法的区别 [打印本页]

作者: admin    时间: 2024-3-10 14:18
标题: $(document).ready()与window.onload方法的区别
Query中$(document).ready()方法的作用类似于传统JavaScript中的window.onload方法,都可以在网页加载完成后执行一些操作,
不过这两种方法严格意义上来说还是有很大区别的,具体不同点如下:

1.执行时间不同
window.onload必须等到页面内的所有元素()加载完毕后才能执行。
注:所有元素是指包括页面结构、内容及所有关联文件,如站内与站外的js与css文件、图片等。
$(document).ready()是页面DOM结构绘制完毕后就执行,不必等到加载完毕。
注:DOM结构回执完毕时网页的所有元素对JQuery而言都是可以访问的,但是,这并不意味着这些元素关联的文件都已经下载完毕。

2.执行次数不同
window.onload不能同时执行多个,如果同一个页面上面有多个window.onload方法(包括关联js文件中),只会执行最后一个window.onload,也就是向上覆盖。
$(document).ready()可以同时执行多个,如果同一个页面上有多个$(document).ready()方法(包括关联js文件中),JQuery能够很好地处理这些情况,
每次调用$(document).ready()方法都会在现有的行为上追加新的行为,这些行为函数会根据注册的顺序依次执行。

3.简化写法不同
window.onload没有简化写法。
$(document).ready()有两种简化写法:$().ready(function)、$(function)。







欢迎光临 艾Q网 (http://js.iqi123.com/bbs/) Powered by Discuz! X3.4