Javascript JQuery-下拉菜单-mouseenter/mouseleave
我已经花了至少两个小时试着让这件事成功 基本上,我有一个带有项目的下拉菜单,我试着编写一些模仿HoverIntent插件的东西,允许用户在菜单关闭前将鼠标移到项目外固定的秒数 我所写的部分是有效的,除了如果你试图在菜单之间移动鼠标太快,它会“断开”。如果你慢慢做,一切都会按预期进行 亲自去看看吧: 如何修复它???这应该可以:Javascript JQuery-下拉菜单-mouseenter/mouseleave,javascript,jquery,css,menu,drop-down-menu,Javascript,Jquery,Css,Menu,Drop Down Menu,我已经花了至少两个小时试着让这件事成功 基本上,我有一个带有项目的下拉菜单,我试着编写一些模仿HoverIntent插件的东西,允许用户在菜单关闭前将鼠标移到项目外固定的秒数 我所写的部分是有效的,除了如果你试图在菜单之间移动鼠标太快,它会“断开”。如果你慢慢做,一切都会按预期进行 亲自去看看吧: 如何修复它???这应该可以: var old_item; var timeout; $(".nav_menu > li").mouseenter(function(){ var it
var old_item;
var timeout;
$(".nav_menu > li").mouseenter(function(){
var item_selected = $("ul", this);
clearTimeout(timeout);
if(old_item){
old_item.hide();
}
item_selected.show();
});
$(".nav_menu > li").mouseleave(function(){
var item_selected = $("ul", this);
old_item = item_selected;
timeout= window.setTimeout(function(){item_selected.hide()}, 500);
});
为了便于比较,您应该发布原始代码。
var old_item;
var timeout;
$(".nav_menu > li").mouseenter(function(){
var item_selected = $("ul", this);
clearTimeout(timeout);
if(old_item){
old_item.hide();
}
item_selected.show();
});
$(".nav_menu > li").mouseleave(function(){
var item_selected = $("ul", this);
old_item = item_selected;
timeout= window.setTimeout(function(){item_selected.hide()}, 500);
});