Ponieważ @Floyd powiedział, że zdarzenia przewijania nie zostaną uruchomione (zakładając, że ukrywasz paski przewijania elementów pływających), ponieważ Twoja aplikacja znajduje się w elemencie iframe wewnątrz Facebooka.
Możesz wykryć, jak użytkownicy przewijają pozycję na stronie (Facebook, nie Twoja aplikacja - aby nie była całkowicie dokładna, chyba że bierzesz pod uwagę nagłówek i pływający nagłówek), używając FB.Canvas.getPageInfo
http://developers.facebook.com/docs/reference/javascript/FB.Canvas.getPageInfo/, ale musisz odpytać Zdarzenie, gdy chcesz sprawdzić pozycję przewijania użytkowników, aby móc ustawić go na liczniku czasu pod numerem setInterval
.
Właśnie stworzyłem wtyczkę do tego celu do wykorzystania w jednej z moich aplikacji na Facebooku. Aby go użyć, wystarczy włączyć wtyczkę po funkcji window.fbAsyncInit i przed załadowaniem pakietu SDK Facebooka JavaScript.
Możesz zapisać się do wydarzenia na Facebooku "przewiń" lub posłuchaj zdarzenia dom "fb-scroll", które dwa parametry będą przekazywane "topPercent" i "bottomPercent", a następnie wywołaj własne funkcje w oparciu o pozycję przewijania użytkowników .
https://github.com/kus/facebook-app-scroll-event
przykład:
// Subscribe to custom Facebook event
FB.Event.subscribe('scroll', function(topPercent, bottomPercent){
console.log('scroll', topPercent, bottomPercent);
});
// Listen to dom event with jQuery
jQuery(document).on('fb-scroll', function(evt, topPercent, bottomPercent){
if(bottomPercent == 100){
// load more content
}
});
http://developers.facebook.com/bugs/355414417803241?browse=search_4f334ef27016b2834810708 –