【问题标题】:This Jquery Menu is Driving Me Nuts?这个 Jquery 菜单让我发疯了吗?
【发布时间】:2011-12-08 11:22:36
【问题描述】:

我正在使用一个 jquery 导航菜单,当您将鼠标悬停在一个元素上并突出显示它时,该菜单会跟随一行。它现在有效,但我遇到了一堆我一生都无法解决的古怪问题。

我会先给你看我的代码,然后解释我遇到的问题。

$(document).ready(function()
{
    $('#nav2 li a').hover(function()
    {
        var offset=$(this).offset();
        var thiswidth =$(this).width()+13;
        $('#nav2 li.ybg').stop().animate({left:offset.left+12+"px",width:thiswidth+"px"},400,function(){
            $(this).animate({height:"28px"},150);
        });    
    },
    function()
    {
        $('#nav2 li.ybg').stop().animate({height:"4px"},150,function(){
            var offset=$(this).offset();
            $(this).animate({left:offset.left+40+"px",width:"55px"},600,'easeOutBounce');   
        });    
    }); 

}); 另外,如果有帮助,这里是 ybg 的 DIV:

ul.nav li.ybg { background-color:#5222B4; position:absolute; z-index:50; width:55px; height:4px; margin-top:6px; }

主要问题是,当您将鼠标移出菜单时,它会停在原处并缩小,而不是回到最左边的项目(主页)。

还有其他怪癖,但我希望如果我能解决这个问题,我就能解决剩下的问题。

希望这是有道理的(如果你想看看我在说什么,网址是 www.buildagokart.com - 这只是我用来测试的随机网址)。

【问题讨论】:

    标签: javascript jquery jquery-plugins navigation


    【解决方案1】:
    ...
            $(this).animate({ left: "0px", width: "55px" }, 600, 'easeOutBounce');   
    ... 
    

    【讨论】:

    • 问题是一直到屏幕左侧而不是回到主页所在的位置。我希望它回到主页,但它在不同大小的浏览器中位于不同的位置......
    • $(this).parent().css('left') + 'px' 怎么样?
    • 这听起来像是可行的......这个概念似乎是正确的,但它仍然在做同样的事情......
    • 我需要看看你的 HTML 标记和 CSS,试着把一个简单的 jsFiddle 放在一起,看看能不能帮你解决。
    猜你喜欢
    • 2011-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    • 2012-11-02
    相关资源
    最近更新 更多