一、
$(function(){ });
特性:
- 在DOM加载完毕后执行ready()方法(不包含图片等非文字媒体文件);
- 一个页面中可以写多个$(function(){});
- 全写: $(docunemt).ready(function(){ });
顺便说一下
(function($){ })(jQuery)
上面的写法是: 立即执行匿名函数()(param),只不过参数是jQuery对象。
等价于:
var a = function(params){ };
a(jQuery);
二、
window.onload = function () {
}
特性:
- 指页面包含图片等文件在内的所有元素都加载完成;
- 一个页面中只能使用一次;
对于一些特殊应用,比如图片的放大缩小,图片的剪裁。需要网页所有的内容加载完毕后才执行的呢?我推荐使用 $(window).load() 方法,这 个方法会等到页面所有内容加载完毕后才会触发,并且同时又没有onload事件的弊端.
<script type="text/javascript">
$(window).load(function() {
alert("hello");
});
$(window).load(function() {
alert("hello again");
});
</script>
上面的代码会在页面所有内容加载完成后按先后顺序依次执行.
之对应的 unload 方法
$(window).unload(function() {
alert("good bye");
});
上面代码会在页面关闭时引发.
由于load事件平时很少用,看了下jQuery源码中有这样一段代码:
// Keep a copy of the old load method
var _load = jQuery.fn.load;