2012-01-13 57 views
1

這裏是我有什麼獲取父類觸發

<div class='class1'> 
    Some content 
    <div class='trigger'> 
    <a href='#'>Push To Start</a> 
    </div> 
</div> 
<div ='toggle_content'> 
    Show my content 
</div> 

然後,我有一個簡單的腳本,負載和另一個腳本隱藏我的toggle_content

$(".trigger").click(function(){ 
    $(this).toggleClass("active").next().slideToggle("slow"); 
    return false; //Prevent the browser jump to the link anchor 
}); 

這工作得很好... 如果我把我的觸發器div移動到toggle_content旁邊,這在next()函數中很明顯。

所以問題是如何讓它與上述結構一起工作?我試過做next(".toggle_content"),但是這只是簡單地將我的觸發器div的類設置爲活動狀態並結束,沒有魔法切換!

任何啓發到jQuery的巫術不自然的世界將不勝感激。

回答

3

它看起來像你想的下一個元素相對於該元素的父

$(this).toggleClass("active").parent().next().slideToggle("slow"); 
1

試試這個:

$(".trigger").click(function(){ 
    $(this).toggleClass("active").parent().next().slideToggle("slow"); 
    return false; //Prevent the browser jump to the link anchor 
}); 
0
$(".trigger").click(function(event){ 
    event.preventDefault(); 
    $(this).toggleClass("active").parent().prev().slideToggle("slow"); 
});