Как запустить ajax-запрос при скроллинге к элементу?
Здравствуйте, уважаемые программисты!
Есть лента новостей. И есть возможность перейти на страницу просмотра конкретной новости.
Но не все новости требуют перехода, в том плане что состоит, допустим, только из одной картинки и переходить по ссылке смысла нет.
А мне хотелось бы прикрутить счетчик просмотра каждой новости.
Когда человек перешел к новости, то тут проблем нет, а вот просто при прокрутке ленты как правильно реализовать запуск ajax-запроса на обновление данных?
И может быть еще каким-то образом сохранять данные, чтобы если человек уже "отметился" в просмотрах, то ajax повторно бы на него не запускался, если он листает ленту снова, но естественно не перезагружал страницу. После перезагрузки уже данные будут проверяться из БД.
Проблема в том, что при одинаковом классе элемента, функция срабатывает только до первого подобного элемента. А если делать динамические данные, допустим Id элемента, то как потом указывать скрипту какой элемент нужно отлавливать?
Есть вариант повесить запуск функции при наведении курсором в область новости, но если курсор будет сбоку, в момент прокрутки, от основной ленты, то просмотр не засчитается.
Отслеживать скролл...
Если скролл прошел чекпоинт т.е блок с новостью, то запустить.
А насчет проверок надо идентифицировать пользователя например по кукам... и в куки записывать какие новости он посмотрел, а перед загрузкой страницы проверять эту куку и проставлять disabled для просмотренных...
Допустим что у меня каждая новость обернута в див с классом Nb. Таких элементов на странице 20 штук. как запустить ajax на одном из них, которое именно в области экрана сейчас у пользователя?
Александр, ну так отловить положение скролла... перечитайте что я описал. прошел чекпоинт (забрали какие то параметры например id новости) и отправили ajax.
Артем Будин, Я обратился за помощью, потому что НЕ ПОНИМАЮ как это сделать.
Отловить положение скролла для чего? Элемента с классом .Nb? Так он мне берет первый такой объект и с ним работает, а остальные видимо игнорирует. Как их отслеживать ВСЕ?