我的 jQuery 导航菜单上滑得太快了
My jQuery navigation menu slides up too soon
我有一个导航菜单。 Child ul 在parent li 鼠标悬停时向下滑动。当鼠标退出时它也会向上滑动。但是,我试图让我的第一个和第二个 sub-menu 在它向上滑动之前延迟 1 秒。我希望 child ul 在鼠标离开后保持打开状态 1 秒。但是,它仍然立即向上滑动。我的代码中缺少什么?
这是我的代码的 link。
https://jsfiddle.net/naeemrind/ptbzwrzu/
$(document).ready(function(){
$("#menu ul li").hover(function(){
$(this).find(".one").stop().slideToggle(400)
});
});
$(document).ready(function(){
$("#menu ul ul li").hover(function(){
$(this).find(".two").stop().slideToggle(400)
});
});
您没有为 hover() 提供 'handlerOut' 函数,因此它对 hover-in 和 hover-out 使用相同的函数。
将您的代码更改为:
$("#menu ul li").hover(
function() {
$(this).find(".one").stop().slideDown(400)
},
function() {
$(this).find(".one").delay(1000).slideUp(400)
});
});
我有一个导航菜单。 Child ul 在parent li 鼠标悬停时向下滑动。当鼠标退出时它也会向上滑动。但是,我试图让我的第一个和第二个 sub-menu 在它向上滑动之前延迟 1 秒。我希望 child ul 在鼠标离开后保持打开状态 1 秒。但是,它仍然立即向上滑动。我的代码中缺少什么?
这是我的代码的 link。 https://jsfiddle.net/naeemrind/ptbzwrzu/
$(document).ready(function(){
$("#menu ul li").hover(function(){
$(this).find(".one").stop().slideToggle(400)
});
});
$(document).ready(function(){
$("#menu ul ul li").hover(function(){
$(this).find(".two").stop().slideToggle(400)
});
});
您没有为 hover() 提供 'handlerOut' 函数,因此它对 hover-in 和 hover-out 使用相同的函数。
将您的代码更改为:
$("#menu ul li").hover(
function() {
$(this).find(".one").stop().slideDown(400)
},
function() {
$(this).find(".one").delay(1000).slideUp(400)
});
});