2012-11-14 63 views
0

我有這個HTML文件,的jQuery的.next()和.closest()不工作

<strong><a href='#' class='showMore'>Show More</a></strong> 
<div class='more'>This is it</div> 

我想顯示鼠標div.more超過a.showMore

$("a.showMore").hover(function() 
{ 
    $(this).closest('.more').show(); 

},function() 
{ 

}); 

我仍然無法獲取MORE框顯示。 我錯過了什麼?

謝謝。

+0

@undefined - 這可能是一個粘貼錯誤。 –

回答

2

您可以使用以下方法:

$("a.showMore").hover(function() { 
    $(this).parent().next(".more").toggle(); 
}); 
+0

謝謝VisioN。這也沒有解決問題。 – Cyberomin

0

爲什麼你的代碼是不工作的原因是因爲你使用最接近(),這是向上遍歷DOM,試圖讓祖先:http://api.jquery.com/closest/

更多是你的標籤的兄弟姐妹,所以用這個來代替:

$("a.showMore").hover(function() 
{ 
    $(this).siblings('.more').toggle(); 
});​ 

編輯:您編輯的標記後,我發帖稱,將與弗洛工作翅膀標記:

<a href='#' class='showMore'><strong>Show More</strong></a> 
<div class='more'>This is it</div> 
+0

謝謝jeromesmadja,這仍然不能解決它。我做了一個console.log,它返回一個jQuery對象。 – Cyberomin