2011-12-30 83 views
8

是否可以合併$(this)$('.someclass')jQuery「this」加上其他選擇器?

例如:$(this + ', .someclass').hover();

我正在嘗試使用懸停操作來爲非後代類設置動畫。我希望類元素動畫是否「it」,又名$('。someclass')或$(this)被徘徊。

我希望這可以完成,而無需創建2個單獨的懸停操作。

+1

如果'this'具有'id','$( '#' + this.id +」,.someclass')懸停();'。 – 2011-12-30 17:46:04

回答

16

您可以使用jQuery的.add()

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

謝謝..... – 2011-12-30 18:11:41

+0

不客氣!很高興我可以幫助:-) – 2011-12-30 18:12:25

0

的另一個選項是使用jQuery find()

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

這將查找'.someclass'作爲'this'的子節點。這不等於','在選擇器中。 – 2017-03-31 13:43:51

1

您可以使用選擇背景:http://api.jquery.com/jQuery/#jQuery-selector-context

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

這裏有一個例子:將鼠標懸停在第一個同級和第二兄弟姐妹的背景顏色將會改變。

$('.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>