Javascript / AJAX элемент показанного события - PullRequest
0 голосов
/ 16 ноября 2009

В javascript возможно ли инициировать действие, когда элемент (например, div) отображается на экране?

У меня есть «бесконечная» сетка, которая расширяется как по горизонтали, так и по вертикали, и я хотел бы загружать элементы динамически, используя AJAX, пока пользователь выполняет прокрутку.

Спасибо

Ответы [ 2 ]

3 голосов
/ 16 ноября 2009

вы можете проверить, находится ли полоса прокрутки ближе к концу, примерно так (я предполагаю, что вы используете jquery):

$('#my-container').scroll(function(e) {
  var tolerance = 0;    
  var $el = $(this);
  if ($el[0].scrollTop + $el.height() >= $el[0].scrollHeight - tolerance) {
   // do your ajax stuff
  }
});

РЕДАКТИРОВАТЬ : вы можете проверить, находится ли элемент в области просмотра с помощью плагина области просмотра (или лучше, вы можете применить ту же логику, что и там, к любому контейнеру, кроме окна)

1 голос
/ 16 ноября 2009

Вы можете использовать document.body. scrollTop и document.body. scrollLeft , чтобы узнать положение прокрутки.

P.S: gpilotino был быстрее и на самом деле опубликовал некоторый полезный код

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...