jquery对面的$(这个)

时间:2012-07-30 11:19:04

标签: jquery

是否可以执行$(this)的反向操作?

因此,它不是取得this元素,而是匹配.sb-popular-thumb a,但不包括$(this)

请参阅下面的示例代码。我已将$(this)标记为$(reverse),因此您可以看到我想要实现的目标。

$('.sb-popular-thumb a').hover(
  function () {

    $('.sb-popular').stop().animate({
        height : '168px'                    
    }, 200);

    $(this).siblings('.sb-popular-thumb-title').show();

    $(reverse).siblings('.sb-popular-thumb-overlay').stop().fadeIn(200);

  },
  function () {

    $('.sb-popular').stop().animate({
        height : '140px'                    
    }, 200);

    $(this).siblings('.sb-popular-thumb-title').hide();

    $(reverse).siblings('.sb-popular-thumb-overlay').stop().fadeOut(200);

});

3 个答案:

答案 0 :(得分:8)

只需使用:

$('.sb-popular-thumb a').not(this)
                        .siblings('.sb-popular-thumb-overlay')
                        .stop()
                        .fadeIn(200);

除了<a>之外,它将获得该类中的所有this元素。

siblings()几乎会做同样的事,但只能获得兄弟元素(duh)?

答案 1 :(得分:4)

这将模仿你的'反向'

$('.sb-popular-thumb a').not($(this));

答案 2 :(得分:2)

.not()会排除您在搜索中指定的任何内容。

所以.not(this)排除了这一点。