jQuery.ready() 函数详解
jQuery.ready() 函数详解
ready()函数用于在当前文档结构载入完毕后立即执行指定的函数。
该函数的作用相当于window.onload事件。
你可以多次调用该函数,从而绑定多个函数,jQuery将在DOM文档结构加载完毕后按照绑定顺序立即执行这些函数。
请注意:请不要在一个页面同时使用ready()函数和<body>元素的onload事件绑定函数,因为它们之间并不完全兼容。如果你必须使用load,那么请不要使用jQuery的ready()和load()来为window或更多指定项(例如图片)添加load事件处理器。
该函数属于jQuery对象(实例)。
语法
jQueryObject.ready( fn )
参数
| 参数 | 描述 |
|---|---|
| fn | Function类型指定需要执行的函数。 |
ready()将为函数参数fn传递一个参数,这个参数就是jQuery标识符,你可以自定义该参数的名称,并将其用作jQuery的别名。
返回值
ready()函数的返回值为jQuery类型,返回当前jQuery对象本身。
与window.onload事件相比,ready()具有较高的执行优先级。window.onload必须等到当前页面中包括图片在内的所有元素全部加载完毕后才会执行;ready()是等到HTML结构绘制完毕后就立即执行,不必等到图片等所有资源加载完毕。
绝大多数时候,你都可以使用ready()来取代window.onload。不过,也有一些例外情况,比如使用:target选择器时,你就必须使用window.onload事件(因为它还要依赖文档结构之外的某些内容)。
示例&说明
ready()函数有以下三种等价的形式:
function handler(){
//这里是需要执行的代码
}
// 形式一
$(document).ready( handler );
// 形式二
$( ).ready( handler ); // 不推荐该形式
// 形式三
$( handler );
以下面这段HTML代码为例:
<input id="btn" type="button" value="点击" />
<div id="message"></div>
以下jQuery示例代码用于演示ready()函数的具体用法:
// 形式一
$(document).ready( function(){
// 为btn按钮绑定点击事件
$("#btn").click( function(){
alert("你点击了按钮!");
} );
} );
//Jquery中click事件必须放在$(document).ready(function(){})之中才起作用,由于在文档加载完毕之前,读取dom元素就是空,会报错。就没有效果。
// 形式三
$( function(){
$("#message").html( '<span style="color:green;">文档加载完毕!</span>' );
} );
在多个JS库共存的情况下,变量$的控制权可能会交给其它的JS库,例如Prototype。此时,在全局作用域中我们只能使用变量jQuery。不过ready()函数会传入一个参数;jQuery,因此我们可以自定义参数名称,从而实现在函数内继续变量$来访问jQuery库(你也可以定为其他名称,然后用该参数变量来访问jQuery)。
// 载入Prototype库文件
// 载入jQuery库文件 //让出对变量$的控制权
jQuery.noConflict(); // 基于Prototype进行DOM操作(变量$的控制权在Prototype手中)
$("myDiv").setStyle( {color: "#ffffff"} ); jQuery(document).ready( function( $ ){
// 在函数内部,我们仍然可以使用变量$来访问jQuery
$("#message").html( "当前jQuery版本是:" + $.fn.jquery );
} ); jQuery(document).ready( function( abc ){
// 在函数内部,我们可以使用变量abc来访问jQuery
abc("#message").html( "当前jQuery版本是:" + abc.fn.jquery );
} );
jQuery.ready() 函数详解的更多相关文章
- jQuery.attr() 函数详解
一,jQuery.attr() 函数详解: http://www.365mini.com/page/jquery-attr.htm 二,jQuery函数attr()和prop()的区别: http: ...
- jquery inArray()函数详解
jquery inarray()函数详解 jquery.inarray(value,array)确定第一个参数在数组中的位置(如果没有找到则返回 -1 ). determine the index o ...
- 【转载】jQuery.extend 函数详解
转载自:http://www.cnblogs.com/RascallySnake/archive/2010/05/07/1729563.html jQuery.extend 函数详解 JQuery的e ...
- jQuery.hasClass() 函数详解
jQuery.hasClass() 函数详解 hasClass()函数用于指示当前jQuery对象所匹配的元素是否含有指定的css类名. 该函数属于jQuery对象(实例). 语法 JavaScrip ...
- jQuery.noConflict() 函数详解
jQuery.noConflict()函数用于让出jQuery库对变量$(和变量jQuery)的控制权. 一般情况下,在jQuery库中,变量$是变量jQuery的别名,它们之间是等价的,例如jQue ...
- jQuery.ajax() 函数详解
jQuery.ajax()函数用于通过后台HTTP请求加载远程数据. jQuery.ajax()函数是jQuery封装的AJAX技术实现,通过该函数,我们无需刷新当前页面即可获取远程服务器上的数据. ...
- jQuery.makeArray() 函数详解
jQuery.makeArray()函数用于将一个类数组对象转换为真正的数组对象. 所谓"类数组对象"就是一个常规的Object对象,但它和数组对象非常相似:具备length属性, ...
- jQuery.isEmptyObject() 函数详解
所谓"空对象",即不包括任何可枚举(自定义)的属性.简而言之,就是该对象没有属性可以通过for...in迭代. 该函数属于全局jQuery对象. 语法 jQuery 1.4 新增该 ...
- jQuery.proxy() 函数详解
jQuery.proxy()函数用于改变函数的上下文. 你可以将指定函数传入该函数,该函数将返回一个新的函数,其执行代码不变,但函数内部的上下文(this)已经被更改为指定值. 该函数属于全局的jQu ...
随机推荐
- Cocos Creator 使用计时器(官方文档摘录)
在 Cocos Creator 中,我们为组件提供了方便的计时器,这个计时器源自于 Cocos2d-x 中的 cc.Scheduler,我们将它保留在了 Cocos Creator 中并适配了基于组件 ...
- CSS实现经典的三栏布局
实现效果: 左右栏定宽,中间栏自适应 (有时候是固定高度) 1 . 绝对定位布局:position + margin <div class="container"> & ...
- Software Testing 3
Questions: • 7. Use the following method printPrimes() for questions a–d. 基于Junit及Eclemma(jacoco)实现一 ...
- shell中输出日期的一个函数
开始 function T () { date '+%F %T.%N' } 结束
- Vue用axios跨域访问数据
Vue用axios跨域访问数据axios是vue-resource的替代品,vue-resource不再维护.安装axios:npm install axios使用vue-cli开发时,由于项目本身启 ...
- 使用addeventlistener为js动态创建的元素添加事件监听
点击li弹出内容,并且动态添加li之后有效 <button onclick="addFunction()">点我增加</button> <ul> ...
- 20190408Linux权限管理week1_day5
权限概述 Linux系统一般将文件可存/取访问的身份分为3个类别:owner(拥有者).group(和所有者同组的用户).others(其他人,除了所有者,除了同组的用户以及除了超级管理员),且3种身 ...
- 传值与传引用(C++)
reference(引用) 是C++对C的一个扩充 int a; int &b = a;//声明b是一个整形的引用变量 C语言,函数的参数传递有2种形式:传值方式调用和传引用方式调用 传值方式 ...
- Node.js基础学习一之Get请求
本人从事的是前端开发,这段时间公司开发项目比较少所以就想着学点东西,然后就想到了Node.js ,跟着菜鸟教程学了点,不过我觉得最好的学习方法是带着需求来学习. 其实和服务端打交道无非就是能有一个可以 ...
- JavaScript case 条件语句
JavaScript case 条件语句 示例 switch(name){ case '1': age = 123; break; case '2' age = 456; break; default ...