2013-03-08 86 views
0

我正在使用jqMobi(不是jQuery Mobile)。 我试图让swipelistener在菜单上工作。基本上我只是想通过水平滑动动作打开或关闭菜单。这里是我的JS:Swipelistener不能在菜单上工作

$.ui.ready(function() { 
    . . . . . 
    $(window).swipeListener({ 
     vthreshold: 50, 
     hthreshold: 70, 
     callBack: function (dir) {     
      if (dir.right) { 
       $.ui.toggleSideMenu(true); 
      } 
      if (dir.left) { 
       $.ui.toggleSideMenu(false); 
      } 

     } 
    }); 
}); 

除了当我在这个红色部分在这里“刷卡”这个伟大的工程 - >

enter image description here

如果我刷别的地方,它工作正常。我也尝试使用document选择器,那也没有工作。我试图向#menu#menu_scroller添加另一个swipelistener

这对我来说很难调试,因为我的设备是IOS6,“调试控制台”已被删除,所以我不能只添加大量的控制台日志记录。 (我没有一台Mac,所以我不能挂钩的开发者菜单)

我的理论是,既然有在菜单项ontouchstartontouchend听众,这是我的swipelistener干扰。有什么建议么?

回答

1

swipeListener已被弃用。相反,由jqUi [swipe,swipeLeft,swipeRight,swipeUp,swipeDown]分派的事件可以绑定。你有ontouchstart/ontouchend的听众可能会从事件中煽动事件(他们是否是自定义听众?)

$.ui.ready(function(){ 
    $(document).bind("swipeLeft",function(){ 
     $.ui.toggleSideMenu(false); 
    }); 
    $(document).bind("swipeRight",function(){ 
     $.ui.toggleSideMenu(true); 
    }); 
} 
+0

非常好。我必须更好地跟上最新的和最伟大的。同时祝贺英特尔的交易。 – davehale23 2013-03-08 18:50:29