回调函数index的问题

来源:3-5 jQuery的属性与样式之删除样式.removeClass()

Conqueror1st

2017-02-22 23:39

<script type="text/javascript"> 

        //.removeClass() 方法允许我们指定一个函数作为参数,返回将要被删除的样式

        $('.right > div:first').removeClass(function(index,className){


            //className = aa bb imoocClass

            //把div的className赋给下一个兄弟元素div上作为它的class

           $('.right > div:eq(1)').addClass(className);


            //删除自己本身的imoocClass

            return 'imoocClass'

        })



    </script>

index既然是所选对线的下标,那么

$('.right > div:eq(1)').addClass(className);

改成$('.right > div:eq(index+1)').addClass(className); 为何没有效果呢,index的值是0

写回答 关注

2回答

  • 枫无涯111
    2017-02-23 13:19:58
    已采纳

    index  是根据调用它的方法的对象的选择器决定的,即$(.right > div:first) 选择的对象

    显然这里div:first 选中的就是第一个div标签,所以只有一个

    你来一个$(div)  就是所有div数组  那么index就有序列了

    Conque...

    嗯,明白了,$('.right > div:eq(index+1)').addClass(className)改成$('.right > div:eq('+index+1+')').addClass(className)就可以了

    2017-02-23 23:39:28

    共 1 条回复 >

  • qq_迸发激情_0
    2017-11-14 12:34:27

    为什么不是index+1而是'+index+1+'?

jQuery基础 (一)—样式篇

jQuery初入开启样式修炼,体验万能的jQuery样式集搭建网站布局

217509 学习 · 1218 问题

查看课程

相似问题