以浏览器装载文档为例,我们都知道在页面完毕后,浏览器会通过JavaScript为DOM元素添加事件。在常规的JavaScript代码中,通常使用window.onload方法,而在jQuery中,使用的是$(document).read()方法。这两个是有区别的。
1.执行时机
$(document).read()方法和window.onload方法有相似的功能,但在执行时机还是有区别学的。
widow.onload方法是在网页中的所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行,即JavaScript此时才可以访问网页中的任何元素。而通过jQuery中的$(document).read()方法注册的事件处理程序。在DOM完全就绪 时就可以被调用。此时,网页的所有元素对jQuery而言都是可以访问的,但是 ,这并不意味着这些元素关联的文件都已经下载完毕。
2.多次使用
假设网页中有两个函数,JavaScript代码如下:
调用:
结果:
这是你会发现,只弹出字符串“two”对话框
字符串“one”对话框不能被弹出的原因是JavaScript的onload事件一次只能保存对一个函数的引用,它会自动用后面的函数
然而:
这样的话结果:
结论:jQuery的$(document).read()方法能够很好处理 每次调用都会在现有的行为上追加新的行为,这些行为函数会根据注册的顺序依次执行
3.简写方式
$(document).read(function(){
})
简写:
$(function(){
})
也可写为:
$().read(function(){
})