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

当页脚航点触发时,即使通过的航点行已通过视图,它们都将被重新触发/再次触发。

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

4

1 回答 1

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

让我知道这是否没有意义,或者我是否错误地描述了这种情况。

于 2013-04-22T20:05:40.717 回答