以浏览器装载文档为例,我们都知道在页面完毕后,浏览器会通过JavaScript为DOM元素添加事件。在常规的JavaScript代码中,通常使用window.onload方法,而在jQuery中,使用的是$(document).read()方法。这两个是有区别的。

1.执行时机

$(document).read()方法和window.onload方法有相似的功能,但在执行时机还是有区别学的。

widow.onload方法是在网页中的所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行,即JavaScript此时才可以访问网页中的任何元素。而通过jQuery中的$(document).read()方法注册的事件处理程序。在DOM完全就绪 时就可以被调用。此时,网页的所有元素对jQuery而言都是可以访问的,但是 ,这并不意味着这些元素关联的文件都已经下载完毕。

2.多次使用

假设网页中有两个函数,JavaScript代码如下:

调用:

结果:

这是你会发现,只弹出字符串“two”对话框

字符串“one”对话框不能被弹出的原因是JavaScript的onload事件一次只能保存对一个函数的引用,它会自动用后面的函数

然而:

这样的话结果:

结论:jQuery的$(document).read()方法能够很好处理 每次调用都会在现有的行为上追加新的行为,这些行为函数会根据注册的顺序依次执行

3.简写方式

$(document).read(function(){

})

简写:

$(function(){

})

也可写为:

$().read(function(){

})

随机推荐

  1. win2008远程桌面会话数增加

    1.[解决]由于没有远程桌面授权服务器可以提供许可证,远程回话被中断 你看到的这个文章来自于http://www.cnblogs.com/ayanmw 由于windows server 2008 R2 ...

  2. 基于LoadRunner构建接口测试框架

    基于LoadRunner构建接口测试框架 http://www.docin.com/p-775544153.html

  3. 关于Parallel.For/Foreach并行方法中的localInit, body, localFinally使用

    对集合成员的操作往往可以通过并行来提高效率,.NET Parallel类提供了简单的方法来帮助我们实现这种并行,比如Paralle.For/ForEach/Invoke方法. 其中,For/ForEa ...

  4. offsetof的使用

    #include <stddef.h> #define offsetof ( TYPE, m)   (size_t )&reinterpret_cast< const vol ...

  5. Win8.1 Metro应用无法联网终极解决方法

    Win8.1 Metro应用无法联网终极解决方法: 一.删除注册表中:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WinSock2\Par ...

  6. POJ 3320 Jessica's Reading Problem

    Jessica's Reading Problem Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6001   Accept ...

  7. 十一、EnterpriseFrameWork框架的分层与系统业务的结合

    上章详细讲了EnterpriseFrameWork框架中的每个分层,这都是从技术层面来说明,也就是我们知道怎么来建一个控制器或一个业务对象,但开发过程中应该建一个什么样的控制器或业务对象了?本章的主要 ...

  8. 简单Bat文件编写

    @ECHO OFFTITLE 清理Work目录E:cd E:\Android_WorkSpace@ECHO ONecho 开始打包MavenTest......mvn install pause @E ...

  9. 【MVC 过滤器的应用】ASP.NET MVC 如何统计 Action 方法的执行时间

    代码如下: using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; u ...

  10. 批量修改Project视图中Prefab的名字

    简要代码如下: using UnityEditor; using UnityEngine; using System.IO; using System.Collections; using Syste ...