我有一些HTML菜单,当用户点击这些菜单的头部时,我会完全显示.当用户点击菜单区域外时,我想隐藏这些元素.
jQuery可以这样吗?
$("#menuscontainer").clickOutsideThisElement(function() {
// Hide the menus
});
Run Code Online (Sandbox Code Playgroud) jQuery click事件似乎没有在移动浏览器中触发.
HTML如下:
<!-- This is the main menu -->
<ul class="menu">
<li><a href="/home/">HOME</a></li>
<li class="publications">PUBLICATIONS & PROJECTS</li>
<li><a href="/about/">ABOUT</a></li>
<li><a href="/blog/">BLOG</a></li>
<li><a href="/contact/">CONTACT</a></li>
</ul>
<!-- This is the sub-menu that is to be fired on click -->
<div id="filter_wrapper">
<ul id="portfolioFilter">
<li><a href="/nutrition-related/">Nutrition related</a></li>
<li><a href="/essays/">Essays and Nonfiction</a></li>
<li><a href="/commissioned/">Commissioned works</a></li>
<li><a href="/plays/">Plays and performance</a></li>
<li><a href="/new-projects/">New Projects</a></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
这是移动设备的jQuery脚本:
$(document).ready(function(){
$('.publications').click(function() {
$('#filter_wrapper').show();
});
});
Run Code Online (Sandbox Code Playgroud)
当我在移动浏览器上单击"发布"列表项时,没有任何反应.
您可以在此处查看该网站:http://www.ruthcrocker.com/
不确定是否有jQuery移动特定事件.

在上面的高度艺术绘画中,绿色广场是粉红色的孩子.粉红色的一个用我的功能包裹在绿色的那个,所以绿色方块可以是任何东西 - 超链接,图像,按钮等.
如果不是单击绿色元素,我想捕获粉红色div上的单击.
这可以通过在绿色方块上使用mouseenter翻转布尔值来完成,但这对我来说似乎是一种混乱的方式.
有线索吗?
重要编辑:我根本不能搞乱绿色方块,所以不要在click事件中添加任何东西.