鼠标悬停不正常

时间:2013-02-28 06:21:44

标签: jquery html css

我正在创建一个简单的菜单,在单击菜单时会显示菜单项 从menuitem鼠标输出时会隐藏。

http://jsfiddle.net/MMHVv/3/

在Firefox中这不起作用, 鼠标悬停时隐藏menuItem

在chrome中它可以正常工作

3 个答案:

答案 0 :(得分:1)

我见过你的代码..

我不知道firefox中的mousemove事件出了什么问题

如果您将mousemove替换为mouseover,则可以正常工作..

onmouseover="return ShowMenu($(this));"

答案 1 :(得分:1)

您通常应该避免内联JavaScript,请参阅: http://robertnyman.com/2008/11/20/why-inline-css-and-javascript-code-is-such-a-bad-thing/

您应该使用mouseover和mouseout功能: http://api.jquery.com/mouseover/

$(function() {
   $('#menu').mouseover(function() {
       $('#TestMenu').show();
   }).mouseout(function(){
    $('#TestMenu').hide();
   });;

});

http://jsfiddle.net/MMHVv/16/

TestMenu也应放在第一个div中,因此当您将鼠标悬停在TestMenu上时,鼠标悬停也会生效。

答案 2 :(得分:0)

尝试使用您的结构,但只需编辑一次[ removed the id for the menuitems ]:

$(function () {
  $('.menu').on({
    mouseover: function () {
        $('.menuItem').slideUp();
        $(this).next().slideDown();
    }
  });
  $('.menuItem').on({
    mouseleave: function () {
        $(this).slideUp();
    }
  });
});

查看fiddle