$(document).ready()即$()方法和window.onload方法的比较
以浏览器装载文档为例,我们都知道在页面完毕后,浏览器会通过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(){
})
随机推荐
- 常用的Expression调用形式
ConstantExpression exp1 = Expression.Constant();构建常量表达式(还可以加类型) BinaryExpression exp12 = Expression. ...
- 数据仓库与ODS的区别
我在公司的数据部门工作,每天的订单类数据处理流程大致如下: 删除分析数据库的历史订单数据 全量更新订单数据到分析数据库.(由于订单核心数据不大,所以经受得起这么折腾) 将数据简单清洗,并生成数据集市层 ...
- Etl之HiveSql调优(union all)
相信在Etl的过程中不可避免的实用union all来拼装数据,那么这就涉及到是否并行处理的问题了. 在hive中是否适用并行map,可以通过参数来设定: set hive.exec.parallel ...
- C#参考:Linq 概述
Linq (Language Integrated Query,语言集成查询),是微软公司提供的一项新技术,它能够将查询功能引入到.NET 3.5 所支持的编程语言中,例如C#,Visual Basi ...
- [转] 关于hibernate的缓存使用
http://blog.csdn.net/woshichenxu/article/details/586361 1. 关于hibernate缓存的问题: 1.1.1. 基本的缓 ...
- JAVA 多线程编程之一(基础)
1.原子变量(java.util.concurrent.atomic) 原子状态,变化不会被打断,如 AtomicLong , AtomicInteger 2.内部锁 synchronized 块 ...
- jQuery---EasyUI小案列
jQuery EasyUI为提供了大多数UI控件的使用,如:accordion,combobox,menu,dialog,tabs,validatebox,datagrid,window,tree等等 ...
- spring 配置多个数据源的文件
<?xml version="1.0" encoding="UTF-8"?><!-- Repository and Service layer ...
- 关于全局唯一ID生成方法
引:最近业务开发过程中需要涉及到全局唯一ID生成.之前零零总总的收集过一些相关资料,特此整理以便后用 本博客已经迁移至:http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
- Microsoft Visual Studio 2013 VSTS单元测试指南
安装vs2013时并未安装VSTS工具包,所以在工具栏:工具->拓展和更新 进行下载安装 vs13已经用了两年了,相比于之前老师推荐的vc6.0感觉要强出很多,刚上手时感觉比较困难,在使用一 ...