javaScritpt学习记录(一)-window.onload = function(){} 与$(document).ready(function(){})区别
来源:互联网 发布:电脑windows壁纸 编辑:程序博客网 时间:2024/05/17 04:46
网上大多数都在介绍$(document).ready(function(){})执行要先于window.onload = function(){} 原因在于前者事当html中的DOM树执行完毕后就执行,而后者是页面所有都执行完毕后才执行。但是也不乏有特殊的情况,这种说法是有问题的。那么接下来我我们看一下JQuery.ready()源码:
已上三种情形可以说明$(document).ready(funciton(){})是一个后执行函数
二、页面存在的数量:
window.onload:不能编辑多个,页面上只能有一个
$(document).ready()可以同时编写多个,并且都可以得到执行
if ( jQuery.browser.msie && window == top ) (function(){ if (jQuery.isReady) return; try { document.documentElement.doScroll("left"); } catch( error ) { setTimeout( arguments.callee, 0 ); return; } // and execute any waiting functions jQuery.ready(); })(); jQuery.event.add( window, "load", jQuery.ready );
很显然不是网上说法$(document).ready(function(){})先于window.onload 执行是不对的。javaScript虽然为动态弱语言,但是在执行只有依然是雨染堆栈的方式执行的,只有将任务存放近任务执行队列中的任务才能执行。但是意外的情况很少。基本上$(document).ready(function(){})执行比较靠前。
除此之外$(function(){}) 是$(document).ready(function(){ }) 的简写 代替页面中的window.onload()(等价于$(window).load(function(){...}))
但是两者有区别:
一 、加载的时机
window.onload:必须等到页面内包括图片的所有元素加载完毕后才能执行
$(document).ready(function(){})是DOM的结构绘制完毕就执行,不必等待加载完毕 :
举个例子:
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title><!-- 引入jquery 文件 --><script type="text/javascript" src="js/jquery.1.3.2.min.js"></script><!-- 引入扩展jquery--><script type="text/javascript" src="js/jquery.extends.js"></script><script type="text/javascript"> // 情形一$(function(){$("#_inp").click(function(){alert("测试成功"); // 成功打印结果});});// 情形二$("#_inp").click(function(){alert("测试成功"); // 无法打印结果});</script></head><body><input id="_inp" type="button" value="测试"/><script type="text/javascript">// 情形三$("#_inp").click(function(){alert("测试成功"); // 成功打印结果});</script></body></html>
已上三种情形可以说明$(document).ready(funciton(){})是一个后执行函数
二、页面存在的数量:
window.onload:不能编辑多个,页面上只能有一个
$(document).ready()可以同时编写多个,并且都可以得到执行
阅读全文
0 0
- javaScritpt学习记录(一)-window.onload = function(){} 与$(document).ready(function(){})区别
- window.onload=function(){}与$(document).ready(function(){})区别
- window.onload=function(){}与$(document).ready(function (){})区别
- $(document).ready(function () {})和 window.onload = function () {}的区别
- window.onload=function(){}和$(document).ready(function(){})的区别
- window.onload和$(document).ready(function(){})区别
- $(document).ready()、 $(function(){})、$().ready(function(){})和window.onload的区别
- jq的 $(function(){}) , document.ready 与 window.onload 的区别
- $.(document).ready(function{})&&window.onload
- $(window).load(function() {}),$(document).ready(function(){}),body.Onload()的区别
- js之当页面加载$(document).ready(function(){})和window.onload=function(){}的区别
- $(document).ready(function() 总结以及和window.onload的区别
- window.onload和$(document).ready(function(){})的区别
- window.onload和$(document).ready(function(){})
- jquery与javascript中的两个页面加载事件 window.onload 与 $(document).ready(function(){})区别
- $(document).ready(function(){ ... })与$(window).load(function() { }
- $(function(){})/$(document).ready()和javascript中onload()的区别
- 【jquery】一、 $(document).ready() 与window.onload的区别
- void空类型指针仅传地址无指向操作
- Android NDK不得不说的秘密
- HTML基础篇
- hadoop面试题以及答案
- 1.2helloworld.md
- javaScritpt学习记录(一)-window.onload = function(){} 与$(document).ready(function(){})区别
- List集合ArrayList,LinkList
- Android Monkey测试入门-8-Monkey高级参数之忽略崩溃和超时
- 1.3数据.md
- log打印几个原则
- MQ-ActiveMQ(消息队列)分布式系统
- 第一篇 自制内核的环境、汇编器、编译器选择
- javascript中的return 详解
- opencv3学习之图像的翻转--重映射