JQ中$(window).load和$(document).ready区别与执行顺序
来源:互联网 发布:sas编程教程 pdf 编辑:程序博客网 时间:2024/05/20 14:28
JQ中$(window).load和$(document).ready区别与执行顺序
投稿:wdc 字体:[增加 减小] 类型:转载 时间:2017-03-01 我要评论
JQ中的$(document).ready()大家应该用的非常多,基本每个JS脚本中都有这个函数的出现有时甚至会出现多个,那么另一个加载函数$(window).load相对出现的次数就很少了,下面为大家介绍一下两者的区别与他们的执行顺序
一般情况下一个页面响应加载的基本顺序是:域名解析 -> 加载html -> 加载js和css -> 加载图片等其他信息。
那么我们在编写JS脚本时什么情况下使用$(document).ready()又在什么情况下使用$(window).load呢,我们先来了解一下两者的功能
一、$(document).ready()
从字面的意思上理解,就是文档准备好了。也就是浏览器已经加载并解析完整个html文档,dom树已经建立起来了,然后执行此函数
原生JavaScript中的写法如下:
document.ready=
function
(){
alert(
"ready"
);
}
jQuery中的写法如下:
$(document).ready(
function
(){
alert(
"ready"
);
});
或
$(
function
(){
alert(
"ready"
);
});
二、$(window).load
在网页中所有元素(包括页面中图片,css文件等所有关联文件)完全加载到浏览器后才执行
原生JavaScript中的写法如下:
window.onload =
function
(){
alert(
"onload"
);
};
jQuery中的写法如下:
$(window).load(
function
(){
alert(
"onload"
);
});
两者的区别在于:
1.执行时间不同
$(document).ready()是在页面完成HTML的加载并建立了DOM树之后就开始执行,但这并不代表页面的所
有数据已经全部加载完成,一些大的图片有会在建立DOM树之后很长一段时间才行加载完成,而
$(window).load()就是整个页面已经加载完毕后才执行,包括图片等一些关联文件。
2.可以被执行的次数不同
$(document).ready()可以在JavaScript代码中出现多次,并且里面的函数或者代码都可以执行;而$(window).load()只能在JavaScript代码中出现一次,如果有多个$(window).load(),那么只有最后一个$(window).load()里面的函数或者代码才会执行,之前的$(window).load()都将被覆盖;
3.执行的效率不同
如要在dom的元素节点中添加onclick属性节点,这时用$(document).ready()就要比用$(window).load()的效率高;但是在某些时候还必须得用$(window).load()才行
总结一下就是:$(window).load()在$(document).ready之后执行,且页面中所有内容全部加载完成后才会执行,两者的使用时机一目了然,大家可以自行决定。
- JQ中$(window).load和$(document).ready区别与执行顺序
- jquery $(document).ready()和$.load执行顺序
- document.ready()与window.load()的区别
- $(document).ready()与$(window).load()的区别
- $(document).ready()与$(window).load()的区别
- document.ready()与window.load()的区别
- 一、jQuery $(document).ready()执行顺序-------------二、jquery $(document).ready() 与window.onload的区别
- window.load 和$(document).ready() 区别
- $(window).load和$(document).ready区别
- window.load和document.ready的区别
- 【转载】window.load 和$(document).ready() 区别
- $(document).ready()和$(window).load()区别
- jq的 $(function(){}) , document.ready 与 window.onload 的区别
- $(document).load(); $(document).ready();的执行顺序
- $(document).load(); $(document).ready();的执行顺序
- jQuery基础知识 window.load 与 document.ready的区别
- $(window).load(function() {})和$(document).ready(function(){})的区别
- $(window).load(function() {})和$(document).ready(function(){})的区别
- Go 工程组织
- 从0开始做互联网推荐-以58转转为例
- 正则表达式验证Ip地址
- 说说JSON和JSONP,也许你会豁然开朗,含jQuery用例
- 从0开始做垂直O2O个性化推荐-以58到家美甲为例
- JQ中$(window).load和$(document).ready区别与执行顺序
- python实例练习
- 解决打包生成JAR在Android项目中不能调用问题
- 解决Tomcat8“At least one JAR was scanned for TLDs yet contained no TLDs”问题
- Kafka设计解析(一)- Kafka背景及架构介绍
- 58到家入驻微信钱包的技术优化
- Python基础-继承与多态
- Builder模式的简单实现
- SpringBoot 整合 Websocket 实现消息推送框架的设计笔记