1

我无法display: block继续工作span

$(".wishlistbtn, .compareboxbtn").hover(
    function() { $(this).children(".helppopup").show(); },
    function() { $(this).children(".helppopup").hide(); }
);

带标记:

<ul>
    <li class="wishlistbtn"><a href="#">Wishlist <span class="helppopup">Add to my Wishlist<img src="images/helppopup-arrow.png" alt=""></span></a></li>
    <li class="compareboxbtn"><a href="#">Compare <span class="helppopup">Add to compare box<img src="images/helppopup-arrow.png" alt=""></span></a></li>
    <li class="getquotebtn"><a href="#">Get Quote</a></li>
</ul>

它根本行不通,但同样的技术在其他地方也行得通。

4

3 回答 3

4

使用find代替children,因为该.hellpopup元素不是直接子元素:

$(".wishlistbtn, .compareboxbtn").hover(
    function() { $(this).find(".helppopup").show(); },
    function() { $(this).find(".helppopup").hide(); }
);

(丑)示范

于 2012-12-13T16:49:38.113 回答
1
$(".wishlistbtn, .compareboxbtn").hover(
// the .helpopup's are grandchildrean, not children of 'this'
    function() { $(this).find(".helppopup").show(); },
    function() { $(this).find(".helppopup").hide(); }
);
于 2012-12-13T16:49:45.510 回答
0

确保您在 $(document).ready(); 中运行该函数;在dom加载之后。

于 2012-12-13T16:51:46.150 回答