我正在创建一个简单的菜单,在单击菜单时会显示菜单项 从menuitem鼠标输出时会隐藏。
在Firefox中这不起作用,
鼠标悬停时隐藏menuItem
在chrome中它可以正常工作
答案 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();
});;
});
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