在菜单下拉条上应用2秒延迟

Apply a 2-Second delay on the menu drop-drop bar

本文关键字:应用 2秒 延迟 菜单      更新时间:2023-09-26

只有当我悬停父项时,我才试图在我的magento下拉子菜单项上实现两秒的延迟。但我发现了一些问题。

这里有一个jQuery,用于第一个菜单项。因此,当我将鼠标悬停在项目上时,它的子菜单将在两秒钟后显示。我的jQuery是:

jQuery(".level0.nav-1").mouseover(function() {
    setTimeout(function() {
        jQuery(".level0.nav-1 .dropdown-container.left").show();
    }, 2000);
});
jQuery(".level0.nav-1").mouseout(function() {
    setTimeout(function() {
        jQuery(".level0.nav-1 .dropdown-container.left").hide();
    }, 0);
});

问题是,在我做出鼠标外移动作后,子菜单不会立即消失。仅当我将鼠标悬停在项目上并将鼠标移出时
有人能帮我解决这个问题吗?我很乐意学习一种新方法,而不是我的方法。(我想这其实不太好)。

您不能也将相同的"mouseout"事件添加到第二级,但没有2秒的延迟吗?

例如:

jQuery(".level0.nav-1 .dropdown-container.left").mouseout(function() {
    $(this).hide();
});

你能用"blur"吗?

$( ".level0.nav-1" ).blur(function() {})

http://api.jquery.com/blur/