JQuery 教程之选择器 下载本文

内容发布更新时间 : 2024/6/28 4:39:58星期一 下面是文章的全部内容请认真阅读。

学设计,来火星!(www.hxsd.cn)

该方法有三个参数:进行操作的对象 obj,进行操作的函数 fn,函数的参数 args。

1.obj 对象是数组

each 方法会对数组中子元素的逐个进行 fn 函数调用,直至调用某个子元素返回的结果为 false 为止,也就

是说,我们可以在提供的 fn函数进行处理,使之满足一定条件后就退出 each 方法调用。当 each 方法提供

了 arg 参数时,fn 函数调用传入的参数为 arg,否则为:子元素索引,子元素本身

2.obj 对象不是数组

该方法同 1 的最大区别是:fn 方法会被逐次不考虑返回值的进行。换句话说,obj 对象的所有属性都会被

fn 方法进行调用,即使 fn 函数返回 false。调用传入的参数同 1 类似。 jQuery.each=function( obj, fn, args ) { if ( args ) {

if ( obj.length == undefined ){ for ( var i in obj ) fn.apply( obj, args ); }else{

for ( var i = 0, ol = obj.length; i

} else {

if ( obj.length == undefined ) { for ( var i in obj ) fn.call( obj, i, obj ); }else{

for ( var i = 0, ol = obj.length, val =obj[0]; i < ol && fn.call(val,i,val) !== false; val = obj[++i] ){} } }

return obj; }

需要特别注意的是 each 方法中 fn 的具体调用方法并不是采用简单的 fn(i,val)或 fn(args),而是采用了

fn.call(val,i,val)或 fn.apply(obj.args)的形式,这意味着,在自己的 fn 的实现中,可以直接采用 this 指针引用

数组或是对象的子元素。这种方式是绝大多数 jQuery 所采用的一种实现方式。

作者:henry222

学设计,来火星!(www.hxsd.cn)

更多资讯,欢迎登陆火星时代官网http://www.hxsd.cn/ 进行了解。