浅析$(function) ready和onload 的区别

新手接触javascript、jquery的时候不可避免的要接触题目所标识的相关内容,反复看过几次一到用的时候总是不踏实,写此文以记之。

符号“$”是jquery对象(个人这样理解,拥有函数的用法)。接着知道下面的一个等式,功能性能上是完全一致的。

$(function(){ /*do some thing*/ }) = $(document).ready(function(){/* do some thing */}) = $().ready(function(){ /* do some thing */ });

上面是jquery中的东西,接着说下原生javascript中的,有window.onload和<body onload=""> 这两个,是存在一定区别的,使用匿名函数以及非匿名函数等会有不同,我暂时用不到所以没有做试验,网上是众说纷纭,不一致。 但是onload与jquery中的ready是不同的,这里面说下:

一个是次数不同,$().ready()在一个一个html中可以使用多次,onload只能使用一次或者说有效绑定只能是唯一的一个。

另一个是执行时机的不同,简单讲$()执行的时机要早于onload,因为$()只要在DOM树加载完成就执行,onload要在全部的元素加载完成执行。

相关推荐