因此,我正在为WP创建一个主题,菜单正在起作用。我想下拉菜单在后面会以某种方式重叠,有时当我将鼠标悬停在一个项目上时,它的子菜单会打开,但是当我将curses移到其子菜单时,它旁边的项目的子菜单会打开。
有任何想法吗?
我注意到,当我将鼠标悬停在顶级菜单项上超过2秒钟,然后将光标移到子菜单时,就不会发生故障。
经过大量的挖掘后发现,当我将鼠标悬停在顶级菜单项上时,我的主题(Divi)将添加一个类,并且当我将光标移动到另一个菜单时,该类将被删除,但会有一定的延迟,因此当我将鼠标悬停在新的顶层菜单项上时,先前悬停的菜单项仍会在其上附加类约1秒钟。
我在主题的文件中找到了以下代码,但我认为这应该归咎于我,但是我尝试将200更改为0,并且仍在发生延迟(我跟踪在Chrome上使用DevTools悬停时正在添加和删除的类):
window.et_pb_toggle_nav_menu = function($element, state, delay) {
if ( 'open' === state ) {
if ( ! $element.closest( 'li.mega-menu' ).length || $element.hasClass( 'mega-menu' ) ) {
$element.addClass( 'et-show-dropdown' );
$element.removeClass( 'et-hover' ).addClass( 'et-hover' );
}
} else {
var closeDelay = typeof delay !== 'undefined' ? delay : 200;
$element.removeClass( 'et-show-dropdown' );
$element.removeClass( 'et-touch-hover' );
setTimeout( function() {
if ( ! $element.hasClass( 'et-show-dropdown' ) ) {
$element.removeClass( 'et-hover' );
}
}, closeDelay );
}
};
守候你守候我