2012-07-02 26 views
8

Sự cố là sự kiện swipeleft/swiperight được kích hoạt khi tôi muốn cuộn dọc.swipeleft/swiperight được kích hoạt trong khi cuộn dọc trong di động jquery

chúng tôi đang sử dụng phiên bản di động jquery 1.1.0 và jquery 1.7.1.

và mã là:

$(document).delegate('#quizResumePage', 'swipeleft swiperight', function (event) { 
    event.stopImmediatePropagation(); 
    if (event.type == 'swipeleft') { 
     $('#btnnext').trigger('click'); 
    } else if (event.type == 'swiperight') { 
     $('#btnprevious').trigger('click'); 
    } 
    event.preventDefault(); 
}); 

Vậy tại sao swipe kích hoạt sự kiện khi tôi muốn scorll trang ??

Sự cố này xảy ra trong thiên hà Samsung android 2.3.5 ...

Có ai có thể giúp tôi giải quyết vấn đề này không?

Cảm ơn trước ...

Trả lời

12

Bạn có thể kiểm soát cách sự kiện swipe trình thay đổi các giá trị của các đối tượng sau đây

$.extend($.event.special.swipe,{ 
    scrollSupressionThreshold: 10, // More than this horizontal displacement, and we will suppress scrolling. 
    durationThreshold: 1000, // More time than this, and it isn't a swipe. 
    horizontalDistanceThreshold: 30, // Swipe horizontal displacement must be more than this. 
    verticalDistanceThreshold: 75, // Swipe vertical displacement must be less than this. 
}); 

nơi nó trên mã của bạn trước nghe swipes. Thay đổi ví dụ: verticalDistanceThreshold thành 15 và durationThreshold thành 500 sẽ giúp giảm sai số dương. Ở phía bên kia, trong mã của bạn, bạn đang kích hoạt sự kiện nhấn trên các nút của bạn, trong khi nó hoạt động, cách tiếp cận tốt hơn là gọi trực tiếp phương thức thực hiện các hành động tiếp theo/trước đó.

Chúc may mắn!

+3

Đặt 'horizontalDistanceThreshold' thành' Math.min ($ (document) .width()/2, 160) 'làm việc cho tôi. Từ [tại đây] (http://c-sharp-snippets.blogspot.com.ar/2011/12/jquery-mobile-swiperight-too-sensitive.html) –

+0

Vuốt là khó bởi vì tôi thấy rằng tôi sắp xếp di chuyển theo đường chéo khi tôi cuộn lên hoặc xuống, vì vậy tôi chỉ muốn di chuyển - không vuốt. Tôi cho rằng tôi có thể đo lường cảm ứng và liên lạc. –

Các vấn đề liên quan