JQuery的ready函数与JS的onload的区别:
1.执行时间
window.onload必须等到页面内包括图片的全部元素加载完毕后才能执行。
$(document).ready()是DOM结构绘制完毕后就执行,没必要等到加载完毕。javascript
2.编写个数不一样
window.onload不能同时编写多个,若是有多个window.onload方法,只会执行一个
$(document).ready()能够同时编写多个,而且均可以获得执行html
3.简化写法
window.onload没有简化写法
$(document).ready(function(){})能够简写成$(function(){});java
在我之前的开发中,通常用到javascript,我都是采用jquery的模式,也就是大多数时候,第一行写的是:jquery
$(document).ready(function(){函数
…ui
});xml
这个时候,不必定要等全部的js和图片加载完毕,就能够执行一些方法,不过有些时候,必需要等全部的htm
元素都加载完毕,才能够执行一些方法的时候,好比说,部分图片或者什么其余方面尚未加载好,这个时候,点击某些按钮,会致使出现意外的状况,这个时候,就对象
须要用到:图片
$(window).load(function() {
…
});
eg:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ready和js中的onload的区别</title>
<script type="text/javascript" src="jquery-core/jquery-1.8.0.js"></script>
<script type="text/javascript">
//js中window对象的onload属性执行jsFunction1函数
window.onload=jsFunction1;
//js中window对象的onload属性执行jsFunction2函数
window.onload=jsFunction2;
//jquery的ready方法执行jqFunction1函数
$(document).ready(jqFunction1);
//jquery的ready方法执行jqFunction2函数
$(document).ready(jqFunction2);
//jsFunction1函数
function jsFunction1(){
alert("jsFunction1");
}
//jsFunction2函数
function jsFunction2(){
alert("jsFunction2");
}
//jqFunction1函数
function jqFunction1(){
alert("jqFunction1");
}
//jqFunction2函数
function jqFunction2(){
alert("jqFunction2");
}
</script>
</head>
<body>
<h1>ready和js中的onload的区别</h1>
</body>
</html>