2009-09-19 63 views
11

Tôi tương đối mới với JQuery và tôi muốn có thể hiển thị menu khi di chuột qua.JQuery Hiển thị ẩn lớp khi di chuột

Đây là html

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

Sau đó, JQuery

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

này hoạt động exept cho tôi kéo nhiều ý kiến ​​ra và điều này sẽ chỉ hiển thị các menu trên div đầu tiên không có vấn đề gì "bình luận" là hoverd. Tôi muốn có menu hiển thị chỉ cho nhận xét hiện đang được di chuột qua. Tôi nghĩ rằng tôi cần phải sử dụng "$ này" để thực hiện công việc này nhưng không chắc chắn như thế nào.

Cảm ơn.

Trả lời

18

Nếu tôi đọc mà chính xác định dạng nên be-

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

Sửa bởi vì tôi là một thằng ngốc hoàn tất.

+0

Điều đó có hiển thị/ẩn "comment_div" không? Tôi đang cố gắng hiển thị/ẩn "comment_actions" trên di chuột. – BandonRandon

+0

Bạn hoàn toàn đúng - tôi đang ngủ nửa ngày hôm nay và không tập luyện. Điều đó * nên * được sửa ngay bây giờ. –

+0

Cảm ơn bạn đã làm việc ngay bây giờ! – BandonRandon

2

Something như thế này làm việc cho tôi:

<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> 

Tuy nhiên, vấn đề bạn sẽ phải đối mặt là di động trên một div có display: none; bộ. Bạn có thể muốn xem xét gói nó trong một cái gì đó là chuột nhạy cảm, và sau đó hiển thị/ẩn trẻ em để thay thế.

Các vấn đề liên quan