为什么选择下拉列表不允许我单击IE项目但在Firefox,Chrome等中正常工作?

我正在使用jquery mega下拉菜单插件 。 在其中一个菜单中,我想添加一个下拉框。 它在Firefox,Chrome中运行良好(如下面的截图所示)

在此处输入图像描述

但是在IE中,当我点击选择下拉列表并将鼠标hover在选择项中的某个项目上超过一秒钟时,整个菜单就会消失(就像它认为我不再盘旋在菜单上一样)。

我能够在这个例子中重现这个问题(点击“销售”)

有关如何在jquery mega菜单上显示选择下拉列表的任何建议

问题的原因是插件的代码本身。 问题:IE不会将其“选择元素”视为实际选择选项的一部分。

将此添加到您的jquery代码应该可以解决问题:

$(".mega-hover select").mouseleave(function(event){ event.stopPropagation(); }); 

请保持让我知道最新消息。

哪个版本的IE有问题? 它在IE7和IE8中运行正常 – 请参阅“Sale”的子菜单:

链接编辑:

http://www.designchemical.com/lab/jquery-plugins/jquery-mega-drop-down-menu/menu2.html

我猜想IE会假设您在单击选择框时从下拉菜单中离开焦点,因此它会尝试隐藏菜单。 您必须修复库代码以validation您是否不再hover在菜单上并且选择框没有焦点。 一个起点是function。 在隐藏菜单之前先执行检查。

 function megaOut(){ var subNav = $('.sub',this); $(this).removeClass('mega-hover'); $(subNav).hide(); // beforeClose callback; defaults.beforeClose.call(this); }