filter和not这两个过滤器的区别?

来源:1-1 什么是遍历?

Selena_yuxuan

2016-09-12 19:52

jquery中过滤器filter()和not()有什么区别?

$("#test2").click(function(event) {

    $('li').filter(':even').css('background-color', 'blue');

})

$("#test3").click(function(event) {

$('li').not(':even').css('background-color', 'red');

})

此例中filter对所有的li进行筛选,而not似乎只是对li的同级元素进行筛查,对于后代元素(AB123)不做判断吗?求大神指教我这个刚入门的菜鸟

写回答 关注

2回答

  • DD慕帆
    2017-02-22 12:22:18
    已采纳

    我觉得是判断了,只是颜色都是红色,看不出来,#test3 的点击效果是使不是偶数的li的背景颜色变为红色;第二个元素他恰好是后代元素(AB123)的父元素,所以第二个元素变红的时候,会把他的子类都变红了,所以后代元素(AB123)的变化就很难看出来

    Selena...

    非常感谢!

    2017-04-28 10:59:03

    共 1 条回复 >

  • SemineLee
    2016-09-16 12:35:02

    $('li').not(':odd').css('background-color', 'red'); 但是这个就对所有的li进行筛选,奇怪

jQuery源码解析(DOM与核心模块)

由浅入深的剖析jQuery库的设计与实现,揭开框架背后的秘密

71439 学习 · 82 问题

查看课程

相似问题