2009-09-19 215 views
11

我對JQuery相對較新,我希望能夠在鼠標懸停上顯示菜單。JQuery顯示隱藏類上懸停

下面是HTML

<td class ="comment_div"> <?php echo("$comment_data['comment']); ?> <br/> 
    <span class="comment_actions"> Approve | Delete | Spam | Edit</span> 
</td> 

然後JQuery的

$("comment_div").hover(
     function() { $(".comment_actions").show(); }, 
     function() { $(".comment_actions").hide(); } 
); 

這工作exept爲我拉出來多條評論,而這僅會顯示在第一個div菜單不管是什麼「評論」徘徊。我想讓菜單僅顯示當前正在懸停的評論。我想我需要使用「$ this」來完成這項工作,但不知道如何。

謝謝。

回答

18

如果我讀的是正確的格式應爲─

$(".comment_div").hover(
    function() { $(this).children(".comment_actions").show(); }, 
    function() { $(this).children(".comment_actions").hide(); } 
); 

編輯因爲我是個白癡。

+0

不會顯示/隱藏「comment_div」嗎?我試圖在懸停時顯示/隱藏「comment_actions」。 – BandonRandon

+0

你是完全正確的 - 我今天半睡着了,沒有練習。 *應該*現在被修正。 –

+0

感謝您的支持! – BandonRandon

2

像這樣的事情對我的作品:

<script> 
$(document).ready(function() { 
$(".container").hover(
     function() { $(this).children('.comment_actions').show(); }, 
     function() { $(this).children('.comment_actions').hide(); } 
); 

}); 

</script> 

<style> 

</style> 


<table border="1"><tr> 
<td class ="container"><br/> 
    asd<span class="comment_actions">Approve | Delete</span> 
</td> 
<td class ="container"><br/> 
    asd <span class="comment_actions">Approve | Delete</span> 
</td> 
<td class ="container"><br/> 
    asd<span class="comment_actions"> Approve| Delete</span> 
</td> 
</tr></table> 

但是,你要面對的問題是懸停在顯示有一個div操作:無;組。你可能想考慮將它包裝在鼠標敏感的東西中,然後顯示/隱藏孩子。