J'ai donc un menu déroulant qui s'affiche sur un clic, selon les exigences de l'entreprise. Le menu devient caché à nouveau après que vous la souris.Cliquez hors menu pour fermer dans jquery
Maintenant, on me demande de le faire rester en place jusqu'à ce que l'utilisateur clique n'importe où sur le document. Comment cela peut-il être accompli?
Ceci est une version simplifiée de ce que j'ai maintenant:
$(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>
J'ai essayé quelque chose comme ça $('document[id!=MainOptSubMenu]').click(function()
pensant qu'il déclencherait sur tout ce qui était pas le menu, mais cela n'a pas fonctionné.
J'ai une réponse ici. > [http: // stackoverflow.com/questions/152975/how-do-je-détecter-un-clic-dehors-un-élément/43405204 # 43405204] (http://stackoverflow.com/questions/152975/how-do-i-detect-a -click-outside-an-element/43405204 # 43405204) –
Copie possible de [Comment puis-je détecter un clic en dehors d'un élément?] (http://stackoverflow.com/questions/152975/how-do-i-detect- a-click-outside-an-element) –