问题与hoverIntent和slideUp slideDown有关

时间:2013-12-18 05:02:25

标签: javascript jquery html

所以我有一组<li> s是滑块中的标题。每个标题都包含.sub-menu中包含的子标题,其中已选择的当前菜单为.current-menu-item。我希望当前项目在加载时出现。我现在用这个来打电话:

var myPath = window.location.pathname;

console.log(myPath);

if(myPath == '/thing/'){
   $('#menu-item-1 .sub-menu').slideToggle("1000");
};
if(myPath == '/other-thing1/'){
   $('#menu-item-2 .sub-menu').slideToggle("1000");
};
if(myPath == '/other-thing2/'){
   $('#menu-item-3 .sub-menu').slideToggle("1000");
};

这会导致当我在该页面上时显示当前页面的.sub-menu

目标是获取导航,以便在我最初加载页面时,显示页面的子菜单。然后,当我将鼠标悬停在其他菜单上时,当前菜单的子菜单会向上滑动。然后,当我鼠标移出任何标题时,.current-menu-item的子菜单再次向下滑动。以下是我到目前为止的情况,这让我非常接近,但.current-menu-item并未再次滑落。

$(".aside-section-content ul li").each(function(){              
if($(this).children('.sub-menu').length){ 
    $(this).hoverIntent({
        interval: 50,
        over: function navHoverInDrop () { 
            $(this).children('.sub-menu').slideDown(300).prev('a').css({'background-image':'none'});
        },
        timeout: 250,
        out: function navHoverOutDrop () { 
            $(this).not('.current-menu-item').children('.sub-menu').slideUp(300).prev('a').css({'background':"url('uploads/plus.png') no-repeat center right 13px"});
        }            
    });
}
});

我已经能够获得一些已经接近的变化,但还没有得到它的bug。有人有主意吗?

0 个答案:

没有答案