我有如下代码。它基本上在触摸时打开一个菜单,并在触摸它时再次关闭。但是,当它被触摸到屏幕上的任何位置时,我试图让它关闭。也不要让其他层在上面移动,我使用 return false,如果有其他方法让我知道。实际上,总的来说,我认为这段代码可以很快变得更好,但我又不是程序员,所以以你知道的视觉方式做事:)
var closed = 1;
$(".plus").on("touchstart",function(event){
if(closed == 1) {
t=$(this).parent();
openmenu(t,250);
closed = 0;
$(".plus").addClass("negative");
return false;
}
else {
var handler = function(event){
if($(event.target).is(".toggle, .toggle *")) return;
$(document).off("click", handler);
$(".mainNav").find(".toggle").slideUp(250,easing);
closed = 1;
$(".plus").removeClass("negative");
return false;
}
$(document).on("click", handler);
}
})