Wpis z mikrobloga

Powiedzmy mam sobie na stronie infinity scroll. Przewijając stronę pojawiają się następne elementy. Czy jest możliwość policzenia ile z tych elementów widział użytkownik strony?
Powiedzmy na stronie wyświetliło się 20 elementów. Użytkownik przewinął stronę do 15 elementu. Dla tych 15 elementów w bazie danych zwiększam licznik wyświetleń, a dla ostatnich 5 nie, mimo że zostały załadowane na stronie. Da się to jakoś zrobić czy nie ma szans?

#php #javascript #jquery #ajax #webdev
  • 3
  • Odpowiedz
@mariecziek: Zakładając, że elementy mają stałą wysokość - bierzesz wartość scrollTop dzielisz ją przez wysokość 1 elementu i masz ilość "wyświetlonych" elementów.
  • Odpowiedz
@mariecziek: Da, bindujesz do dokumentu event scroll i sprawdzasz pole scrollTop, wtedy bierzesz posortowaną listę elementów, które Cię interesują(bo mogą być w jakimś containerze, nie?) i sprawdzasz, czy scrollTop jest większe lub równe ich offsetTop, czyli pozycji od góry.
  • Odpowiedz