jQuery和Self()方法不起作用

时间:2016-11-15 05:29:46

标签: jquery

以下代码更改在mouseenter和mouseleave上添加和删除css类。我试图将当前元素与之前的兄弟姐妹一起包含在andSelf()中,但它似乎不起作用,因为我目前从jQuery文档中理解它。

代码无效但不包含当前元素。

    $(function () {
        // will execute when the page is ready
        $('.rating-circle').mouseenter(function(){
            $(this).prevAll().addClass('rating-hover');
        }).mouseleave(function(){
           $(this).prevAll().removeClass('rating-hover'); 
        });
    });

现在使用andSelf()但现在不会做任何事情。

    $(function () {
        // will execute when the page is ready
        $('.rating-circle').mouseenter(function(){
            $(this).prevAll().andSelf().addClass('rating-hover');
        }).mouseleave(function(){
           $(this).prevAll().andSelf().removeClass('rating-hover'); 
        });
    });

以下是我试图改变的div标签。我想更改以前所有标签的类,并包含当前标签。

<div id="rating-container">
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>

1 个答案:

答案 0 :(得分:0)

我将andSelf() 改为addBack()。现在可以使用了。

  $(function () {
    // will execute when the page is ready
    $('.rating-circle').mouseenter(function(){
        $(this).prevAll().addBack().addClass('rating-hover');
    }).mouseleave(function(){
       $(this).prevAll().addBack().removeClass('rating-hover'); 
    });
});