jquery这种混乱

时间:2010-08-19 11:54:16

标签: jquery hover this

以下工作正常。但是,我有2个子菜单​​ - 如果我徘徊在其中,他们的两个孩子“ul.menu_body”都会消失。

大概我需要在某处使用“this”,因此淡入淡出只适用于所需的菜单。

我尝试添加 $(“ul.menu_body”,this).fadeIn('fast') 但这会阻止它完全工作 - 没有错误(我能看到)

任何想法?谢谢。

    $(document).ready(function(){

           $("ul.menu_body li:even").addClass("alt");
            $("li a.menu_head").hover(function () {
                $("ul.menu_body").fadeIn('fast')
            });
            $(".subMenuParent").mouseleave(function(){
                $("ul.menu_body").fadeOut();
                 $("li.subMenuParent").removeClass("active");

            });
// rest of my script

澄清 - 下面的代码表示当“li a.menu_head”悬停时,“ul.menu_body”的每个实例都会淡入。

我只想显示相关的子菜单,而不是全部。

1 个答案:

答案 0 :(得分:2)

你很接近,但是悬停发生在锚元素(变为this)而不是li元素上。我假设ul不是锚的孩子,而是李的孩子。尝试使用:

$('ul.menu_body',$(this).closest('li')).fadeIn('fast');

$(this).closest('li').find('ul.menu_body').fadeIn('fast');