2011-12-30 15 views
8

$(this), $('.someclass') ile birleştirmek mümkün mü?jQuery "this" artı diğer seçiciler?

Örnek: $(this + ', .someclass').hover();

Vurgulu olmayan bir sınıfı hareketlendirmek için gezinme eylemini kullanmaya çalışıyorum. Sınıf öğesinin "o", yani $ ('. Someclass') OR $ (this) hovered olup olmadığını canlandırmasını istiyorum.

Bunun 2 ayrı hover eylemi oluşturmadan yapılabileceğini umuyorum.

+1

ise 'this' bir' id', '$ sahiptir ('#' + this.id +', .someclass')() getirin;.'. –

cevap

16

jQuery's .add()'u kullanabilirsiniz.

$(this).add('.someClass').hover(); 
+0

Teşekkür ederim .....! –

+0

Rica ederim! Sevindim :-) –

0

bir diğer seçenek Sen seçici bağlamda kullanabilirsiniz

$(this).find('.someclass').hover(); 
+0

Bu '' ın çocuk gibi '.someclass' için arayacaktır. Seçicideki '' eşdeğeri değil. –

1

jQuery find() kullanmak olacaktır: Burada http://api.jquery.com/jQuery/#jQuery-selector-context

$('+ .someclass', this).hover(); 

bir örnek: Birinci kardeş ve ikinci kardeş bitti gelin Arkaplan rengi değişecektir.

$('.sibling1').hover(
 
    function() { 
 
    $('+ .sibling2', this).css({"background":"#ff0"}); 
 
    }, 
 
    function() { 
 
    $('+ .sibling2', this).css({"background":"#eee"}); 
 
    } 
 
);
div { 
 
    padding:5px; 
 
    background:#eee; 
 
    margin-bottom:5px; 
 
    display:inline-block; 
 
    cursor:pointer; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="sibling1">Sibling 1</div> 
 
<div class="sibling2">Sibling 2</div>