div改变后WayPoint Refriring

时间:2013-04-15 14:15:01

标签: javascript jquery infinite-scroll jquery-waypoints

<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>

当页脚路点触发时,即使传递的路径已经通过视图,它们也会被重新触发/再次触发。

如何在不调用所有先前航点的情况下插入新航点?

1 个答案:

答案 0 :(得分:0)

这是航点开发商的回复,我想我会在这里分享。

对于视觉代码问题来说,单词可能会很棘手,但我会在编写你所描述的内容时采取行动:

<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');
  });
});

如果这没有意义,或者我错误地描述了这种情况,请告诉我。