2013-05-16 11 views
12

Próbuję uzyskać wartość scrollTop() podczas przewijania strony na iPadzie/iPhonie.Pobierz scrollTop() podczas przewijania na iPadzie/iPhonie

$(window).scroll(function(){ 
    console.log($(window).scrollTop()); 
}); 

Używam tego kodu dla zwykłych przeglądarek komputerowych. W Safari na Macu konsola pokazuje każdy piksel podczas przewijania. Ale na iPadzie otrzymuję wartość tylko wtedy, gdy przewijanie się zatrzymuje.

Jak uzyskać wszystkie wartości przewijania podczas przewijania nawet na iPadzie?

+0

Sprawdźcie tutaj: http://stackoverflow.com/q/2863547/1414562 –

+0

Niestety to nie działa albo dlatego, że nie zwraca piksele, podczas gdy efekt bounce/Rubberband/cokolwiek, że iOS przewijanie zapewnia – Slevin

+0

Musisz użyć zdarzenia zmiany gestów, wydaje się, że daje to dokładne zachowanie. Przedstawię to na http://stackoverflow.com/questions/2863547/javascript-scroll-event-for-iphone-ipad/17195346#17195346 –

Odpowiedz

-3

Spróbuj użyć window.pageYOffset i window.pageXOffset.

+0

Wyjaśnij, dlaczego to zadziała. –

0

Ograniczenie to zmienić w iOS 8

ten trwa do logowania $ (okno) .scrollTop() po touchend natomiast inercja/odbijają efekt jest uruchomiony:

$(document).on('scroll', function(){ 
console.log($(window).scrollTop());}); 

testowany na iPad, iPhone 9,3 9,2 .4

0

Czy próbowałeś następujące elementy?

$(document).on('scroll', function(){ 
    var currentPosition = $(window).scrollTop(); 
    console.log(currentPosition); 
}); 
Powiązane problemy