在jquery mobile中使用swipeleft和swiperight进行两次射击?
我是jQuery mobile的新手。 我使用滑动概念来滑动多个单独的html页面。 当我从swipepage3到swipepage2时它正常工作。 swipepage2到swipepage1,swipepage2到swipepage3,它发射两次。 如何解决这个问题?
这是我的代码:
Swipepage1.html
Share QR Countries
Newyork
Footer
Swipepage2.html
Share QR
Swipepage3.html
Share QR
slide.js
$(document).on('pagebeforecreate', function() { $('#article1').bind('swipeleft', function(event,ui) { $.mobile.changePage("swipepage2.html", "slide"); }); $('#article2').bind('swipeleft', function(event,ui) { $.mobile.changePage("swipepage3.html","slide"); }); $('#article2').bind('swiperight', function() { $.mobile.changePage("https://stackoverflow.com/questions/19448137/firing-twice-when-swipeleft-and-swiperight-in-jquery-mobile/swipepage1.html","slide"); }); $('#article3').bind('swiperight', function(event,ui) { $.mobile.changePage("swipepage2.html","slide"); }); });
这是因为事件正在为页面绑定两次。
1.建议使用.on()而不是.bind()我在pagecreate / init / show之外使用它。我没有遇到任何问题.on例如。
$('#article1').on('swipeleft', function(event,ui) { $.mobile.changePage("swipepage2.html", "slide"); });