我的应用程序具有swipeleft和swiperight功能,可显示导航菜单。代码看起来像这样。
$(document).on("swipeleft swiperight", function(swipeEvent) {
//my code here
}
在应用的页面中,我使用jquery mobile popup来显示图片。我的问题是swipeleft和swiperight仍然在弹出窗口内工作,并在后台调出导航栏,我不想要这个。
我在弹出窗口小部件上使用了data-dismissible =“false”,但这没有帮助。
您认为我应该如何解决这个问题?
答案 0 :(得分:0)
您可以将一个函数绑定到popupcreate事件(http://api.jquerymobile.com/popup/#event-create),该事件使swipeleft swiperight功能无效。执行此操作的一种方法是让popupcreate将全局变量更新为true,然后让.on(swipeleft,swiperight)在执行任何操作之前检查该变量的值。然后你可以在popupafterclose事件上将它设置为false。
答案 1 :(得分:0)
使用event.stopPropagation();为我工作。
我在popup div上添加了swipeleft和swiperight处理程序,并使用了event.stopPropagation();在里面。
$('#mypopup').on('swipeleft swiperight', function(event) {
event.stopPropagation();
});