从其中一个航点处理程序中销毁元素上的所有航点

时间:2016-07-14 08:05:47

标签: jquery-waypoints

我在评论列表中的每个“新评论”附加了几个航点,这些评论会在评论进入视图(向上或向下)时将评论标记为已读。我将我的代码基于Inview快捷方式文件,但没有削减芥末,因为它不支持批量附加航点的$ .waypoint方法。

我的问题是,如何从其中一个航路点处理程序中销毁特定元素上的updown航路点?我无法找到检索API中特定元素的所有路点的方法。

content.find('.comment').has('.metadata > span.new').waypoint
  offset: 'bottom-in-view'
  context: '.content'
  handler: (direction) ->
    comment = $(this.element)
    if direction == 'down'
      this.destroy()
      console.log 'Mark as read'

content.find('.comment').has('.metadata > span.new').waypoint
  offset: 0
  context: '.content'
  handler: (direction) ->
    comment = $(this.element)
    if direction == 'up'
      this.destroy()
      console.log 'Mark as read'

请原谅我的coffeescript;)我还打算最后干掉这一切。

1 个答案:

答案 0 :(得分:0)

原来最好使用Inview快捷方式,因为您可以在其处理程序中使用其destroy()方法。 Inview destroy方法会破坏创建Inview时添加的所有4个航点类型。

for comment in content.find('.comment').has('.metadata > span.new')
  do (comment) ->
    new Waypoint.Inview
      element: comment
      context: content[0]
      entered: (direction) ->
        this.destroy()
        console.log 'Mark as read'