我使用此代码在悬停时显示子菜单。我试图使用延迟参数,但只有当悬停需要1秒时我才需要显示子菜单。
$('.mainmenu li').hover(function() {
$(this).find('.submenu').fadeIn( 'slow' );
},
function() {
$(this).find('.submenu').slideUp( 1 ).delay( 3000 );
我找到了这个代码,它正是我需要的,但我只有一个问题,这个脚本显示所有子菜单。
$(function() {
var timeoutId;
$(".mainmenu li").hover(function() {
if (!timeoutId) {
timeoutId = window.setTimeout(function() {
timeoutId = null;
$(".submenu").slideDown('slow');
}, 1500);
}
},
function () {
if (timeoutId) {
window.clearTimeout(timeoutId);
timeoutId = null;
}
else {
$(".submenu").slideUp('slow');
}
});
});
我试着把这一行:
$(this).find('.submenu').fadeIn( 'slow' );
但它不起作用。
有人能帮助我吗?
答案 0 :(得分:0)
由于您没有发布HTML,假设每个.submenu
.mainmenu li
试试这个:这只会显示当前.submenu
的{{1}},而不是全部li
需要更改新代码:
.submenu
完整代码:
$(this).find('.submenu').slideDown('slow');