nalomenko
@nalomenko
Руководитель отдела разработок в студии «Lava»

JQuery: событие «Элемент просмотрен»?

Привет, хабрасообщество!



Возникла необходимость как-то обрабатывать событие полного появления объекта (в данном случае div, хотя это, по сути, не имеет значения) в области видимости окна браузера. Если точнее — нужно отправлять ajax-запрос на сервер, который присваивает комментарию статус «прочтён», как только пользователь его условно «прочитал» (коммент попал в его поле зрения).



Заранее спасибо!
  • Вопрос задан
  • 4112 просмотров
Пригласить эксперта
Ответы на вопрос 3
@nes
Можно реализовать это с помощью jQuery.offset() и jQuery.scrollTop(). Ну и выбрасывать, например, trigger(«shown»)
Ответ написан
Комментировать
Finom
@Finom
Может быть вам поможет этот плагин: imakewebthings.github.com/jquery-waypoints/
Ответ написан
Комментировать
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Отслеживаете изменение window.scrollTop
Находите координаты искомого дива — x1, y1, x2, y2
Проверяете, попадает ли прямоугольник полностью в прямоугольник window.scrollTop, window.scrollLeft, window.scrollTop + window.height, window.scrollLeft + window.width (способ получения вьюпорта поправить с учетом доктайпа).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы