以浏览器装载文档为例,在页面加载完毕后,浏览器会通过Javascript为DOM元素添加事件。在常规的Javascript代码中,通常使用window.onload方法,而在Jquery中,使用的是$(document).ready()方法。$(document).ready()方法是事件模块中最重要一个函数,可以极大的提高Web应用程序的速度。
window.load
$(document).ready()
执行时机
必须等待网页中所有的内容加载完毕后(包括图片)才能执行
网页中所有DOM结构绘制完毕后就执行,可以能DOM元素关联的内容并没有加载完
编写个数
不能同时编写多个
以下代码无法正确执行:
window.onload = function(){
   alert(“text1”);
};
window.onload = function(){
   alert(“text2”);
};
结果只输出第二个
能同时编写多个
以下代码正确执行:
$(document).ready(function(){
   alert(“Hello World”);
});
$(document).ready(function(){
   alert(“Hello again”);
});
结果两次都输出
简化写法
$(function(){
   // do something
});
另外,需要注意一点,由于在$(document).ready()方法内注册的事件,只要DOM就绪就会被执行,因此可能此时元素的关联文件未下载完。例如与图片有关的html下载完毕,并且已经解析为DOM树了,但很有可能图片还没有加载完毕,所以例如图片的高度和宽度这样的属性此时不一定有效。要解决这个问题,可以使用Jquery中另一个关于页面加载的方法---load()方法。Load()方法会在元素的onload事件中绑定一个处理函数。如果处理函数绑定给window对象,则会在所有内容(包括窗口、框架、对象和图像等)加载完毕后触发,如果处理函数绑定在元素上,则会在元素的内容加载完毕后触发。
Jquery代码如下:
$(window).load(function(){ 
       // 编写代码 
});
等价于JavaScript中的以下代码
Window.onload = function(){
     // 编写代码
}

转载于:https://blog.51cto.com/webview/318902

window.onload与$(document).ready()的区别相关推荐

  1. window.onload与document.ready的区别

    1. window.onload必须等到网页中所有的内容加载完(包含图片)才执行 document.ready网页中所有DOM结构绘制完执行,可能DOM并没有加载完 所有document.ready比 ...

  2. window.onload和$(document).ready(function(){})的区别

    前段时间在面试之前查找并整理了一下window.onload和$(document).ready(function(){})区别,今天有时间更到我的博客上,由于本人资历尚浅,如有不对的地方,还请指正. ...

  3. window.onload和$(document).ready()区别很大……

    window.onload和$(document).ready()区别很大-- posted on 2014-06-11 14:01 Juniors 阅读(...) 评论(...) 编辑 收藏 转载于 ...

  4. jquery (js中window.onload与jquery中$(document.ready())的区别)

    jquery 学习之一(js中window.onload与jquery中$(document.ready())的区别) 耳听为虚,眼见为实.通过下面的实例可查看两者的异同(注意:aa.jpg最好是一张 ...

  5. JQ中$(window).load和$(document).ready()使用,区别与执行顺序

    本文内容借鉴http://www.jb51.net/article/107111.htm(阅读原文请跳转此链接!) 一般情况下一个页面响应加载的基本顺序是:域名解析 -> 加载html -> ...

  6. $(window).height() 和 $(document).height()的区别

    $(window).height() 和 $(document).height()的区别 $(window).height()代表了当前可见区域的大小, $(document).height()则代表 ...

  7. html——windows.onload()与$(document).ready()区别

    最近开始写html,原来基本学的都是皮毛,js与jquery混写,现在分开后,初始化的两个函数有点不太清楚就总结了下. 浏览器加载完DOM后,会通过javascript为DOM元素添加事件,在java ...

  8. Dom onload和jQuery document ready的区别

    使用如下代码进行测试: <html> <script src="jquery_1.7.1.js"> </script> <script&g ...

  9. window. onload=function(){} 与 $(function(){}) 的区别

    页面加载事件:window.οnlοad=function(){} 和 $(function(){}); 1.window.οnlοad=function(){}是js原生的事件: 2.$(funct ...

最新文章

  1. Nutanix企业云助力广播传媒的融合媒体发展之路
  2. laravel-admin 关闭debug模式导致异常信息到页面的排查
  3. LeetCode算法题9:递归和回溯-N皇后问题
  4. Java6.0中Comparable接口与Comparator接口详解
  5. glob及IO重定向
  6. python之简单的get和post请求
  7. 使用DFS求任意两点的所有路径
  8. linux主线程结束 子线程还能运行么,linux主线程和子线程
  9. windows 用户管理
  10. T-SQL Parser
  11. 在线java面试题库_Java笔试题库
  12. C# 小票打印机 直接打印 无需驱动
  13. Profinet协议生成GSD文件教程
  14. python 批量修改文件夹和子文件夹的名称
  15. 大学物理实验报告 -- 电表改装与校准
  16. sumif 根据条件求和
  17. ArcGIS 制作中国区的数字高程DEM地图(附中国区STRM 90m DEM百度云免费下载链接)
  18. UART协议及串口回环
  19. 新浪开放平台开发1--认证
  20. Java实现 LeetCode 513 找树左下角的值

热门文章

  1. 《Python编程:从入门到实践 》[Eric Matthes著] 中文pdf非扫描版
  2. 企业级IM应该帮助员工提高绩效,避免无关的信息干扰
  3. Ajax(5)UpdatePanel的使用方法
  4. C++/C语言实现HTTP的GET和POST请求
  5. 关于.NET编译的目标平台(AnyCPU,x86,x64)
  6. Android—WebView与JS交互
  7. java setrotation_如何使用Java库将文档转换为横向模式?
  8. django 怎么加权限 静态资源目录_Django1.7如何配置静态资源访问
  9. burpsuite插件的使用
  10. php stdclass,php中new stdclass()用在什么场景