$(window).load(function() {})和$(document).ready(function(){})的区别
2015-09-10 15:47
375 查看
用$(window).load(function(){...})和body.onload()需要等到页面的所有内容加载完毕才执行(等到图片或其他媒体下载完毕)。
但是如果当网速比较慢的时候,加载一个页面往往需要较长的时间,几秒到十几秒不等,甚至更长...,所以我们经常会遇到页面还没有完全加载完毕而用户已经在操作页面了这种情况,这样页面表现出来的效果就跟我们预期的效果不一样了。
Example:
如果我们想同时加载多个函数,我们必须这样写
1.<body onload="fn1(),fn2()"></body>看起来不好看
2.如果用$(window).load(),我们可以这样加载多个函数
$(window).load(function() {
alert("hello,我是jQuery!");
});
$(window).load(function() {
alert("hello,我也是jQuery");
});
使用$(document).ready(function(){}),或简写为$(function(){}),因为他会在页面的dom元素加载完毕后就执行,而无需等到图片或其他媒体下载完毕.
但是有时候确实我们有需要等到页面的所有东西都加载完后再执行我们想执行的函数,所以是该使用$(window).load(function(){...})还是该使用$(function(){})往往需要结合具体需要而作不同的选择.
最后附上一段在所有DOM元素加载之前执行的jQuery代码
<script type="text/javascript">
(function() {
alert("DOM还没加载哦!");
})(jQuery)
</script>
呵呵,有时候我们也有这个需求!
如果我们想同时加载多个函数,我们必须这样写
$(window).load(function() {})
转自 : $(window).load(function() {})和$(document).ready(function(){})的区别
如果我们想同时加载多个函数,我们必须这样写
<body onload="fn1(),fn2()"></body>看起来极其丑陋,如果用$(window).load()我们可以这样加载多个函数
$(window).load(function() {
alert("hello,我是jQuery!");
});
$(window).load(function() {
alert("hello,我也是jQuery");
});
这样写它会从上往下执行这两个函数,并且看起来漂亮多了.
但是如果当网速比较慢的时候,加载一个页面往往需要较长的时间,几秒到十几秒不等,甚至更长...,所以我们经常会遇到页面还没有完全加载完毕而用户已经在操作页面了这种情况,这样页面表现出来的效果就跟我们预期的效果不一样了。
Example:
如果我们想同时加载多个函数,我们必须这样写
1.<body onload="fn1(),fn2()"></body>看起来不好看
2.如果用$(window).load(),我们可以这样加载多个函数
$(window).load(function() {
alert("hello,我是jQuery!");
});
$(window).load(function() {
alert("hello,我也是jQuery");
});
使用$(document).ready(function(){}),或简写为$(function(){}),因为他会在页面的dom元素加载完毕后就执行,而无需等到图片或其他媒体下载完毕.
但是有时候确实我们有需要等到页面的所有东西都加载完后再执行我们想执行的函数,所以是该使用$(window).load(function(){...})还是该使用$(function(){})往往需要结合具体需要而作不同的选择.
最后附上一段在所有DOM元素加载之前执行的jQuery代码
<script type="text/javascript">
(function() {
alert("DOM还没加载哦!");
})(jQuery)
</script>
呵呵,有时候我们也有这个需求!
如果我们想同时加载多个函数,我们必须这样写
$(window).load(function() {})
转自 : $(window).load(function() {})和$(document).ready(function(){})的区别
如果我们想同时加载多个函数,我们必须这样写
<body onload="fn1(),fn2()"></body>看起来极其丑陋,如果用$(window).load()我们可以这样加载多个函数
$(window).load(function() {
alert("hello,我是jQuery!");
});
$(window).load(function() {
alert("hello,我也是jQuery");
});
这样写它会从上往下执行这两个函数,并且看起来漂亮多了.
相关文章推荐
- 格雷码递归求解(2016腾讯笔试)
- 深入理解C++枚举类型enum
- 最短路径—Dijkstra算法和Floyd算法
- 关于现代CPU,程序员应当更新的知识
- poj 2436 位运算+组合枚举
- UVA - 11134 Fabled Rooks
- APP中数据加载的6种方式
- 【hdoj1005】Number Sequence
- MongoDB CRUD 基础知识
- Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
- 使用CSS禁止textarea调整大小功能的方法
- 黑马程序员——C语言笔记之指针
- Ubuntu下编译C/C++文件
- web前端开发的点点滴滴---2.HTML的DOCTYPE
- session原理解析
- ffmpeg time_base详解
- Python 基础语法(四)
- 链表的排序
- Android apk动态加载机制的研究
- 0909作业一