我有一个超级鱼菜单,延迟设置为 800,但是当我从一个下拉菜单移动到另一个下拉菜单时,它仍然同时显示上一个下拉菜单和新下拉菜单。直到 800 毫秒延迟结束,然后之前的下拉菜单才会消失。我不想更改延迟,但是如果打开了一个新的下拉菜单,我希望之前打开的下拉菜单立即关闭而不会延迟。我希望这是有道理的。
有没有办法做到这一点?
谢谢!!
我有一个超级鱼菜单,延迟设置为 800,但是当我从一个下拉菜单移动到另一个下拉菜单时,它仍然同时显示上一个下拉菜单和新下拉菜单。直到 800 毫秒延迟结束,然后之前的下拉菜单才会消失。我不想更改延迟,但是如果打开了一个新的下拉菜单,我希望之前打开的下拉菜单立即关闭而不会延迟。我希望这是有道理的。
有没有办法做到这一点?
谢谢!!
在其网站上,延迟设置为 800,我猜它工作正常,它不显示旧的弹出窗口。您是否对其代码进行了任何其他更改?
http://users.tpg.com.au/j_birch/plugins/superfish/#examples
编辑:如果您不想将多个 UL 菜单结构修改为单个 UL,那么这是一个解决方案。只需为每个 UL 提供唯一的 id,然后像这样在 superfish.js 中修改over = function()
over = function(){
var $$ = $(this), menu = getMenu($$);
$('.sf-menu').each(function(){
if ($(this).attr('id') != $(menu).attr('id')) {
$(this).hideSuperfishUl();
}
});
clearTimeout(menu.sfTimer);
$$.showSuperfishUl().siblings().hideSuperfishUl();
},
这可能会导致其他一些副作用,但我现在看不到任何副作用。