2012-02-17 39 views
0

我有什麼情況如下:jQuery的懸停增加2班2個不同的div的

(我有 「持有人」 分區同一頁上2,3次以上)

<div class="holder"> 

    <div class="one">one something </div> 
    <div class="two">two something</div> 
    <ul class="ulclass"> 
     <li></li> 
     <li></li> 
     <li></li> 
    <ul> 
</div> 

<div class="holder"> 

    <div class="one">one something </div> 
    <div class="two">two something</div> 
    <ul class="ulclass"> 
     <li></li> 
     <li></li> 
     <li></li> 
    <ul> 
</div> 

... 。

然後我有一些jQuery的是這樣的:

$(".holder").hover(function() 
{ 

$(this).addClass("addedClass"); 

}, function() { 

$(this).removeClass("addedClass"); 

}); 

此加載類時,我將鼠標懸停它.holder。 我需要做的是,當鼠標懸停在.holder到另一個階級「liaddclas」添加到li元素

<div class="holder addedClass"> 
    <div class="one">one something </div> 
    <div class="two">two something</div> 
    <ul class="ulclass"> 
     <li class="liaddclas"></li> 
    <ul> 
</div> 

I tried with 
$(".holder").hover(function(){ 
     $(this).addClass("addedClass"); 
     $(this "li").addClass("liaddclas"); 
     }, function() { 
     $(this).removeClass("addedClass"); 
     $(this "li").removeClass("liaddclas"); 
    }); 

但這添加類liaddclass所有.holder潛水我頁面上,當我懸停在.holder和我想要將其添加到只有一個div ... THx

回答

1

有幾種方法可以做到這一點。這裏是一個:

$(this).find('li').addClass("liaddclas"); 
+0

這一個很適合我,THX! – user1217017 2012-02-17 20:38:35

0

只選擇li元素中當前徘徊div的,你可以這樣做:

$(".holder").hover(function(){ 
    $(this).addClass("addedClass"); 
    $("li",this).addClass("liaddclas"); 
}, function() { 
    $(this).removeClass("addedClass"); 
    $("li",this).removeClass("liaddclas"); 
}); 

這只是許多方法可以做到這一個,但語法$("li",this)選擇所有li元素在this的範圍內。

你的語法,$(this "li")是簡單無效的JavaScript。