Рефриринг WayPoint после изменения div

<div class="content-book-row-container">
  <div id="content-book-container-inject">
   <div class="content-book-row-container">when im read im read</div>
   <div class="content-book-row-container">when im read im read</div>
   <div class="content-book-row-container">when im read im read</div>
   <div class="content-book-row-container">when im read im read</div>
  </div>
 <div id="content-book-row-footer"></div>
</div>

когда срабатывает путевая точка нижнего колонтитула, даже если пройденные строки путевых точек прошли обзор, все они будут повторно запущены/запущены снова.

Как можно вставить новые путевые точки, не вспоминая все предыдущие путевые точки?


person local idiot    schedule 15.04.2013    source источник


Ответы (1)


Это был ответ от разработчика путевых точек, я решил поделиться им здесь.

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

<div class="wrapper">
  <div class="thing-container">
    <div class="injected-thing">...</div>
  </div>
  <div class="footer"></div>
</div>

И ваша путевая точка в нижнем колонтитуле выглядит примерно так:

$('.footer').waypoint(function(direction) {
  injectNewThing();
  $('.injected-thing').waypoint(function() {
    alert('reached');
  });
});

Для простоты предположим, что injectNewThing вставляет еще одну внедренную вещь:

<div class="wrapper">
  <div class="thing-container">
    <div class="injected-thing">...</div>
    <div class="injected-thing">...</div>
  </div>
  <div class="footer"></div>
</div>

Проблема заключается в следующей строке:

$('.injected-thing').waypoint(function() {
  alert('reached');
});

Цель, .injected-thing включает их всех. Но то, что вы действительно хотите, это просто путевая точка на новых. Мое предложение состоит в том, чтобы добавить класс к «вещам», на которых вы уже запустили функцию путевой точки, а затем настроить таргетинг на элементы, которые не имеют этого класса:

$('.footer').waypoint(function(direction) {
  injectNewThing();
  $('.injected-thing').not('.reached').waypoint(function() {
    $(this).addClass('reached');
    alert('reached');
  });
});

Дайте мне знать, если это не имеет смысла или я неверно охарактеризовал ситуацию.

person local idiot    schedule 22.04.2013