在iPhone上点击菜单外部时强制导航菜单缩回

时间:2014-12-03 13:37:46

标签: css navigation

请参阅http://beta.jigsaw.org/处的菜单。当点击iPhone上的菜单外,我无法找到让它自动关闭的方法。

在桌面上,这可以通过以下方式解决:

var clicked_menu = false;

$(".navbar-collapse").click(function() {
    clicked_menu = true;
});

$("body").click(function() {
    if(!clicked_menu) $(".navbar-collapse").collapse('hide');
    clicked_menu = false;
});

我尝试过使用jQuery tap(http://api.jquerymobile.com/tap/),但无法以相同的方式使用它。

2 个答案:

答案 0 :(得分:1)

因为我假设你想在点击一个项目时隐藏菜单,我会做一些简单的事情

$(document).on("touchstart click", function() { 
     if ($(window).width() <= 767)
         $(".navbar-collapse").collapse('hide');
});

您可能还想检查菜单是否已预先显示。

答案 1 :(得分:0)

感谢Last1here的一些指示,我找到了一个解决方案。

$("body > div:not(.navbar-wrapper)").on("touchstart", function() {
    $(".navbar-collapse").collapse('hide');
});