JQuery的入口函数$(document).ready(function () {})和window.onload = function () {}入口函数的区别:
1、编写的个数不相同,window.onload只能编写一个,而JQuery的入口函数可以编写多个 。window.onload编写多个时会出现事件覆盖的问题,比如编写三个window.onload函数,但是最终只会执行最后一个函数,之前编写的函数将不会执行。 window.onload=function(){}
<script>
window.onload = function () {
alert("1");
}
window.onload = function () {
alert("2");
}
window.onload = function () {
alert("3");
//最终只会执行该函数
}
</script>
$(document).ready(function(){})
<script>
$(document).ready(function () {
alert("1");
//会执行该函数
})
$(document).ready(function () {
alert("2");
//会执行该函数
})
$(document).ready(function () {
alert("3");
//会执行该函数
})
</script>
2、window.onload是等到所有的外部资源都加载完毕以后才会执行,其中包括图片、视频等资源,它的优点是可以在函数中操作任意的图片或者视频对象,缺点是加载慢。
而jquery是在DOM加载完毕以后才会执行。如果想在操作图片对象或者视频等对象,还是需要在window.onload函数中执行。它的优点是加载快,但是如果想操作图片或者视频对象时可能会出现获取不到当前对象的属性,因为可能当时外部资源并没有加载完毕。