对不起,标题不是更具体。我编写的jquery菜单有一些小问题。它可以在wlmtest.info
上看到它的主菜单。我遇到的麻烦如下。
如果将鼠标悬停在顶部的菜单按钮上,则菜单会下降。现在将鼠标向上移动,不要将鼠标悬停在实际下拉列表上。即使鼠标离开菜单,菜单下拉也会继续显示。
摆脱下拉列表的唯一方法是将鼠标悬停在菜单下拉列表上,然后将鼠标移开。
我的代码如下
jQuery("ul.lmenutabs li").mouseenter(function()
{
jQuery("ul.lmenutabs li").removeClass("active"); //Remove any "active" class
jQuery(this).addClass("active"); //Add "active" class to selected tab
jQuery(".lmenutab_content").hide(); //Hide all tab content
var activeTab = jQuery(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
jQuery(activeTab).fadeIn(); //Fade in the active ID content
jQuery(".lmenutab_container").fadeIn()
return false;
});
jQuery(".lmenutab_container").mouseleave(function() {
jQuery(".lmenutab_content").hide(); //Hide all content
jQuery(".lmenutab_container").hide(); //Hide all content
jQuery("ul.lmenutabs li").removeClass("active");
return false;
});
正如您所看到的,我有一个mouseenter来显示下拉列表。然后是一个mouseleave,这样当你将鼠标悬停在下拉列表上并离开时,下拉列表就会被隐藏。
如何将菜单按钮保留在顶部,以便隐藏下拉菜单?当您离开按钮将鼠标悬停在下拉菜单上时,没有下拉消失。
很抱歉,如果这听起来很混乱,如果你需要我,我会再次解释。
非常感谢任何帮助。
答案 0 :(得分:0)
您正在等待菜单本身的mouseleave()事件,但如果鼠标从未进入菜单,则永远不会触发鼠标离开事件。
在标题上添加一个mouseenter事件以隐藏菜单和页面本身上的onClick()操作,以确保用户可以通过单击其外部来随时删除菜单。