2013-05-02 13 views
8

Czy można dostosować odległość niezbędną do uruchomienia zdarzenia przeciągania, a jeśli tak, to w jaki sposób?Dopasowywanie odległości zdarzenia przeciągania w komórce jquery mobile

Oto kod IM mówisz:

$('.page2').bind('swiperight', function(event, ui){ 
    $.mobile.changePage(
     $('.page1'), 
     { 
      allowSamePageTransition: true, 
      transition: 'slide', 
      reverse: 'true', 
      showLoadMsg: false,      
      reloadPage: true, 
     } 
    ); 
    return false; 
}); 

Odpowiedz

9

Tak, jest to możliwe.

Trzeba zmodyfikować te właściwości:

  • $.event.special.swipe.horizontalDistanceThreshold (default: 30px) - Swipe poziome przemieszczenie musi być więcej niż to.

  • $.event.special.swipe.verticalDistanceThreshold (default: 75px) - Przesunięcie pionowe przesunięcia musi być mniejsze niż to.

To musi być zrobione podczas imprezy mobileinit, tak:

$(document).bind("mobileinit", function(){ 
    $.event.special.swipe.horizontalDistanceThreshold (default: 30px); 
    $.event.special.swipe.verticalDistanceThreshold (default: 75px); 
}); 

ostatnia sprawa. Jeśli nigdy nie pracował z mobileinit, to wydarzenie musi być wywołana przed jQuery mobile jest inicjowany, tak:

<script src="jquery.js"></script> 
<script> 
    $(document).bind("mobileinit", function(){ 
     $.event.special.swipe.horizontalDistanceThreshold (default: 30px); 
     $.event.special.swipe.verticalDistanceThreshold (default: 75px); 
    }); 
</script> 
<script src="jquery-mobile.js"></script> 

Spójrz na oficjalnej dokumentacji here

+3

$ .event.special.swipe. horizontalDistanceThreshold = wartość; Zrobiłem sztuczkę :) Thx – luQ