li with class =“active”始终显示在mouseleave上

时间:2014-08-24 12:28:37

标签: jquery jquery-hover mouseleave

我为你设置了一个小提琴:

http://jsfiddle.net/xq50ebt3/

我有一个导航菜单,其中包含一些动态获取类="活动"当用户正在观看其父母文件夹中的文档时。

On" hover"在这个脚本中,包含ul / s子菜单的其他内容将由此脚本显示,该版本可以正常工作:

   $('.navigation li').hover(function () {
        $(this).find('ul').slideDown()
    }, function () {
        $(this).find('ul').slideUp()
    }).find('ul').hide()

因为总有一个li元素,其中class =" active"在pageload上,我想在页面加载时显示它;我已经使用此代码完成了此操作:

$('.navigation li.active').find('ul').slideDown();

我现在的问题是:在导航-div的鼠标上,最后显示和滑下的ul滑了起来......这很好......但是我想要的ul包含li和class = "有源"在mouseleave上显示。

任何提示都将受到高度赞赏!

1 个答案:

答案 0 :(得分:0)

通过使用它得到它:

http://jsfiddle.net/7prdd1th/

$(document).ready(function(){
    $(".navigation li").hover(function(){
        $(".navigation li.active").removeClass("active");
        $(this).addClass("active");
    });
    $(".navigation").mouseleave(function(){
        //alert('123');
        $(".navigation li").removeClass("active");
        $('.navigation ul li ul li.aktiv').parents('li').addClass('active');
    });       
});