好吧,我找到了一个代码,它似乎可以工作,但我需要在该代码中添加一些内容,以防止它在我将鼠标悬停在其子菜单/子菜单元素上时触发,但当我将鼠标悬停在其上时仍然需要触发其他项目或其他项目子菜单的这是当前脚本
$(document).ready(function() {
$("#navbar li:hover, #navbar li:sfhover").hover(function(){
$('#navbar .current-menu-parent, #navbar li.current-menu-item').addClass("non-ahover");
},
function(){
$('#navbar li.current-menu-parent, #navbar li.current-menu-item').removeClass("non-ahover");
});
});
所以我当前的事件菜单将具有 .current-menu-parent 或 .current-menu-item。我的子菜单以父级 < li > 类内部的 < ul > 类开始,子菜单类为 < ul class="sub-menu">,然后继续为其项目使用 < li > 类。
所以我的问题是,当我将鼠标悬停在子菜单上时,该子菜单的其中一个项目是当前页面或正在查看的父页面处于事件状态,上面的脚本会触发并导致丑陋,是否有我可以放置的代码片段在此脚本内部,如果当前子菜单可见,则停止调用,因此它不会应用脚本想要应用的类?
我知道可能有点令人困惑,但如果您需要澄清,请告诉我,我会尽力提供帮助。
最佳答案
- 将事件处理程序绑定(bind)到子级
- 让该处理程序调用 stopPropagation()
关于jquery 删除悬停时添加类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5836765/