因此,我有一个下拉菜单,可以根据业务需求在单击时显示。将鼠标从菜单上移开后,该菜单将再次隐藏。
但现在我被要求将它留在原处,直到用户单击文档上的任何位置。如何才能做到这一点?
这是我现在所拥有的简化版本:
$(document).ready(function() {
$("ul.opMenu li").click(function(){
$('#MainOptSubMenu',this).css('visibility', 'visible');
});
$("ul.opMenu li").mouseleave(function(){
$('#MainOptSubMenu',this).css('visibility', 'hidden');
});
});
<ul class="opMenu">
<li id="footwo" class="">
<span id="optImg" style="display: inline-block;"> <img src="http://localhost.vmsinfo.com:8002/insight/images/options-hover2.gif"/> </span>
<ul id="MainOptSubMenu" style="visibility: hidden; top: 25px; border-top: 0px solid rgb(217, 228, 250); background-color: rgb(217, 228, 250); padding-bottom: 15px;">
<li>some</li>
<li>nav</li>
<li>links</li>
</ul>
</li>
</ul>
我尝试了像这样的$('document[id!=MainOptSubMenu]').click(function()
,以为它会在菜单之外的任何东西上触发,但它不起作用。
https://stackoverflow.com/questions/2868582
复制相似问题