jQuery 笔记 —— $.each、$().each方法 与 选择器过滤写法

一、$.each 与$().each

简单区别:

$.each 参数可对任意对象进行操作,$().each 可见是对选择器所选的元素进行操作。

原理:

是通过call 与apply 方法实现的。

$.each 用法一:

var obj = {id:"id",name:"name"};
$.each(obj,function(){
    //此处this 指代当前遍历到的obj 的胞元素,即属性键值对
    alert(this.id);//提示"id"
});
var obj2 = [{id:"id1"},{id:"id2"}];
$.each(obj2,function(){
    //此处this 指代当前遍历到的obj 的胞元素,即数组
    alert(this.id);//提示"id1","id2"
});
var eles = $("div");
$.each(eles,function(){
    //此处this,指当前遍历到的eles 集合中div元素
})
$.each 用法二:

$.each(obj,function(i,data){
    //i为当前遍历到的胞元素的索引,data为遍历到的胞元素
});

$().each() 相当于是在$.each() 的基础上把操作对象限制为元素了。

$().each() 用法一:

$("div").each(function(){
    //this 指当前遍历到的div 元素
});

$().each() 用法二:

$("div").each(function(i){
    //this 同上。i为当前索引
});

即两个方法都有两种基本用法,即回调函数有无参数。


如何退出each 的方法循环?

只需在内部返回true 即可退出本次,循环,相当于普通for 循环的continue 。



二、jQuery 选择器过滤

遍历元素中的过滤器有:first、last、eq、filter、not。

使用方式一:

var ele = $(".colorRed").first();
var ele = $(".colorRed").last();
var ele = $(".colorRed").eq(0);
var ele = $(".colorRed").filter("p");
var ele = $(".colorRed").not("p");

简单说明:

first():只取找到的元素中的第一个(不管前面该元素前面有没有相同标签的元素)。

last():与first 方法,取最后一个。

eq(index):取指定索引对应的元素。

filter():只取符合条件的元素。

not():与filter 相反,取不符合该天剑的元素。


使用方式二:

var ele = $(".colorRed:first()");
var ele = $(".colorRed:last()");
var ele = $(".colorRed:eq(0)");
var ele = $(".colorRed:filter('.fontBold')");//filter此种方式无效
var ele = $(".colorRed:not('fontBold')");

只是写法不同,可以与选择器写在一起。注意filter 此方式无效,其它都可以。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值