我正在尝试为网站创建一个菜单,为此我使用了 jQuery,但遇到了一个小问题。
我有这个结构
<div class="menuTitle menuDiv menuNode" id="menuNode_<?=$row_menu["id"]?>">
<a href="<?=$rt?>" class="menuAnchor" onclick="return registerMenuClick($(this).parent())">
<span><?=$nodeName?></span>
</a>
</div>
<div class="menuSelect" id="menuSelect_<?=$row_menu["id"]?>" align="center"><?=$nodeName?></div>
在 jQuery 中,我有
$(document).ready(function(){
$(".menuNode, .menuSelect").live("mouseover",function(event){
MenuBar.selectedID = $(this).attr("id").replace("menuNode_","").replace("menuSelect_","");
MenuBar.showThisBranch();
}).live("mouseout",function(event){
MenuBar.selectedID = $(this).attr("id").replace("menuNode_","").replace("menuSelect_","");
MenuBar.hideThisBranch();
});
})
当用户将鼠标悬停在 menuNode 上时,应该显示 menuSelect(确实如此),但如果我将鼠标悬停在 menuAnchor 或 span 上,它会触发 mouseout 事件,然后触发 mouseover 事件。
因此,如果说,我将鼠标悬停在 menuNode 上,然后移到 span 然后再次移到 menuNode,它将触发 mouseover 事件 3 次。我之前在单击事件中遇到过这种行为,但似乎用于解决此问题的方法不适用于此问题。
有什么建议么?