2013-05-16 13 views
8

Mam problem z iPhonem i przesuwaniem na inne strony. Podczas przewijania strony czułość ruchu jest drażliwa i przesunie się do następnej strony. Czy istnieje sposób, aby kontrolować czułość bezstykowa w tym kodzie:Zmiana czułości przesunięcia za pomocą jQuery Mobile

<script type="text/javascript"> 
$(document).ready(function(){ 
    var counter = 1; 
    $(document).bind('swipeleft','#deal_1',function (event, ui) { 
    counter++; 
    if(counter>3) 
    counter = 1; 
    var nextpage = 'dailydeal'+counter+'.html'; 
    if (nextpage.length > 0) { 
     $.mobile.changePage(nextpage, {transition: "slide", 
     reverse: false}, true, true); 
     } 
    }); 
$(document).bind('swiperight','#deal_1',function (event, ui) { 
    counter--; 
    if(counter<1) 
    counter=3; 
    var prevpage = 'dailydeal'+counter+'.html'; 
    if (prevpage.length > 0) { 
     $.mobile.changePage(prevpage, {transition: "slide", 
     reverse: true}, true, true); 
    } 
    }); 
    }); 
</script> 

Odpowiedz

7

To wydaje się działać w przeważającej części:

<script type="text/javascript"> 
    $(document).bind("mobileinit", function() { 
    $.event.special.swipe.horizontalDistanceThreshold = 100; 
    }); 
</script> 

Z mojego wyrozumienia horizontalDistanceThreshold jest ustawiony na domyślny dla 30px, więc zmieniłem do 100. Do tej pory wydaje się być zbalansowany podczas przewijania w dół i bez bycia zbyt wrażliwym.

20

Aby dostosować tę odpowiedź do wszystkich urządzeń, proponuję ustawić próg względem szerokości ekranu. Na przykład:

$.event.special.swipe.scrollSupressionThreshold = (screen.availWidth)/60; 
$.event.special.swipe.horizontalDistanceThreshold = (screen.availWidth)/60; 
$.event.special.swipe.verticalDistanceThreshold = (screen.availHeight)/13; 

Zobacz jQuery Mobile API Documentation

+1

To jest niesamowite odpowiedź. Użyłem go do mojej aplikacji, a od tego czasu przesuwanie w ChromeView to znowu błogość. –

+1

Awesome, ta odpowiedź powinna dostać tick! – TobiasW

+1

To wspaniała odpowiedź, która pomogła mi rozwiązać problem z przesuwaniem jquerymobile w Androidzie. Jeśli ktoś ma z tym problem, możesz to wypróbować. – Ramon

Powiązane problemy