0

我有以下简单的向下滑动悬停菜单。

 $(function(){
$('.sub-menu').hide();
$('.menu-item').hover(
    function () {
        var target = $(this).children('ul');
        $.browser.msie ? target.show() : target.slideDown(150);
    },
    function () {
        var target = $(this).children('ul')
        $.browser.msie ? target.hide() : target.slideUp(150);
    }
);

});

当您将鼠标悬停在 .menu-item 上时,它会向下滑动 .sub-menu,并在您离开时向上滑动,非常完美。

当您将鼠标悬停在 .menu-item 上时,我需要它向上滑动 .sub-menu,反之亦然。

我已经完成了交换 slideUp 和 slideDown 的明显操作,但它似乎不起作用。

有任何想法吗?

如果可以的话,非常感谢:)

4

1 回答 1

0
$(function(){
    $('.menu-item').hover(
        function () {
            var target = $(this).children('ul');
            $.browser.msie ? target.hide() : target.slideUp(150);
        },
        function () {
            var target = $(this).children('ul')
            $.browser.msie ? target.show() : target.slideDown(150);
        }
    );
});

应该可以工作,尽管没有更多代码我无法测试它。

基本上我假设.sub-menu已经显示,所以当你将鼠标悬停在 . menu-item你想隐藏它,对吗?

我改变的只是:我交换了两个函数并删除了$('.sub-menu').hide();开始的那个。在它真正向上滑动之前,它不需要隐藏。

编辑:处理您的最新示例。

在这里查看:http: //jsfiddle.net/GwBuj/3/

我所做的是:

  • 更改#button#slider到类 (.button.slider)
  • 相应地修改 CSS,并更改.sliderCSS 以允许多个按钮(您将其绝对定位,这不会让您看到其他按钮)
  • 调整 JQuery 代码以在多个按钮上工作
  • 添加了另一个按钮以向您显示它有效
于 2010-11-09T07:33:03.780 回答