JQuery下关于$.Ready()的分析

2016-02-19 14:35 3 1 收藏

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享JQuery下关于$.Ready()的分析教程,希望对大家能有一点小小的帮助。

【 tulaoshi.com - Web开发 】

$(document).Ready()方法 VS OnLoad事件 VS $(window).load()方法
接触JQuery一般最先学到的是何时启动事件。在曾经很长一段时间里,在页面载入后引发的事件都被加载在”Body”的Onload事件里.

对于Body的Onload事件和JQuery的Ready方法相比,有很多弊端.比如:

1.加载多个函数的问题
body onload="a();b();"
/body

在Onload事件中只能这样加载,很丑陋…而在JQuery中你可以利用多个JQuery.Ready()方法,它们会按次序依次执行

2.代码和内容不分离
这个貌似不用说了,让人深恶痛绝-.-!!

3.执行先后顺序不同
对于Body.Onload事件,是在加载完所有页面内容才会触发,我的意思是所有内容,包括图片,flash等.如果页面的这些内容很多会让用户等待很长时间.

而对于$(document).ready()方法,这个方法只是在页面所有的DOM加载完毕后就会触发,无疑很大的加快了网页的速度.

但是对于一些特殊应用,比如图片的放大缩小,图片的剪裁。需要网页所有的内容加载完毕后才执行的呢?我推荐使用$(window).load()方法,这个方法会等到页面所有内容加载完毕后才会触发,并且同时又没有OnLoad事件的弊端.
代码如下:
script type="text/javascript"
$(window).load(function() {
alert("hello");
});
$(window).load(function() {
alert("hello again");
});
/script

上面的代码会在页面所有内容加载完成后按先后顺序依次执行.

当然不要忘了与之对应的Unload方法
代码如下:
$(window).unload(function() {
alert("good bye");
});

上面代码会在页面关闭时引发.

在所有DOM加载之前引发JS代码
这个方法是我在调试的时候最喜欢的,有时候开发的时候也用这种方法
代码如下:
body
script type="text/javascript"
(function() {
alert("hi");
})(jQuery)
/script
/body

对,就是利用js闭包的形式将js代码嵌入body,这段代码会自动执行,当然也可以直接嵌入js代码,这种方式要注意顺序问题,如下:
代码如下:
body
div id="test"this is the content/div
script type="text/javascript"

alert($("#test").html());//I Can display the content

/script
/body
body

script type="text/javascript"

alert($("#test").html());//I Can't display the content

/script
div id="test"this is the content/div
/body

上面两段代码,第二段代码当中因为只能解释到当前代码之前的DOM,而test并不存在于已经解析的DOM数.所以第二段代码无法正确显示.

来源:http://www.tulaoshi.com/n/20160219/1607295.html

延伸阅读
不知道大家注意到没有,Windows XP新增加了一个快速切换用户的功能。它可以让您在不注销的情况下在用户之间进行切换,而且每个用户有自己独立的配置文件和桌面。也就是说当您切换到另外一个用户(即用另外一个账号登陆)时,以前的那个用户运行的所有程序都还是在运行的,并没有退出来。这就给我们的开发带来了新的问题。比如您的应用程序...
标签: Web开发
随着时代发展,javascript阵营里面出现了越来越多的优秀的框架,大大简化了我们的开发工作,在我们使用这些框架的时候是不是也应该饮水思源想想它们都是怎样构建起来的呢?如果你不满足于仅仅是使用一些现成的API,而是深入了解它们内部的实现机制(照某人的说法, API是贬值最快的东西),最好的办法就是阅读它们的源代码了,前提是你读得懂。...
一、拼版与合开 我们在工作中不会总是做16K、8K 等等正规开数的印刷品,特别是包装盒、小卡片(合格证)等常常是不合开的,这时候就需要我们在拼版的时候注意尽可能把成品放在合适的纸张开度范围内,以节约成本。 1、下面先介绍正规的拼版,以大度16K封面为例:(示范软件:CD8,因为是以前的老帖子转过来的,版本低了点,不过用法是差不多的) ...
标签: Web开发
jQuery是我最近发现的一个新工具。jQuery开发团队形容jQuery是“一个快捷、简练的JavaScript库,它可以简化HTML文档检查、事件处理、动画执行、并给你的Web页面增加AJAX交互。” jQuery初步 你可以免费下载jQuery的最新版本。它由一个明确定义的脚本文件构成,因此你可以随意研究它的源代码。下载JavaScript文件后,你就可以把它放在Web服务...
标签: Web开发
如何令你的网站动感十足 您的网站是否仍一如既往地保持静态?目前呈几何增长的互联网网站中,有相当一部分仍固守静态,无形中已大大落后于时代的步伐。所谓静态指的就是网站的网页内容固定不变,当用户浏览器通过互联网的HTTP(Hypertext Transport Pr otocol)协议向WEB服务器请求提供网页内容时,服务器仅仅是将原已设计好的静态HTML文档...

经验教程

709

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部