2014-02-26 78 views
1

我正在開發其中i使用錘子的swiperight和swipeleft事件部分,其工作原理與刷卡刷卡頁面的功能。然而,在觸摸設備(iPad)上,當您滑動時,它也會水平滾動,這非常煩人。由於這個原因,當我使用jquery .animate()時,動畫有時並不平滑,即直接跳轉到next/prev頁面而不是動畫。我的代碼如下Hammer.js刷卡停止verticle滾動的ipad

有沒有辦法刷卡時停止iPad的水平滾動?我知道eventDefault()做,但它不適合我

 Hammer(array[i]).on("swipeleft", function(e) { 
//e.preventDefault(); -- this doesnt work :(
     if(!$(this).next().length){ 
      console.log("no more pages to right"); 
     } 
     else{ 
      $(this).next().animate({ 
       marginLeft:"auto" 
      },{duration:500,queue:false}); 

      $(this).animate({ 
      marginLeft:"-" + windowWidth + "px" 
      },{duration:300,queue:false}); 
     } 
     }); 

     Hammer(array[i]).on("swiperight", function() { 
     if(!$(this).prev().length){ 
      console.log("no more pages to left"); 
     } 
     else{ 
      $($(this)).animate({ 
      marginLeft:windowWidth+"px" 
      },{duration:300,queue:false}); 

      $($(this).prev()).animate({ 
       marginLeft:"0px" 
      },{duration:400,queue: false}); 
     } 
     }); 

回答