Waypoints.js,如何重新做初步检查?

时间:2015-01-18 17:22:25

标签: javascript jquery infinite-scroll jquery-waypoints

我正在构建一个网站,我需要一个可以向下滚动的表,直到没有更多内容,但它一次只能查询大约50个条目。所以它有点无限滚动。

我现在遇到的问题是我想在初始化新航点时重新进行Waypoints.js的初步检查:

  

“当创建航点时,该过程中的一个步骤是检查航点是否已经向下传递。如果有,则立即触发航点处理程序。” - http://imakewebthings.com/waypoints/api/enabled-option/

我想要这样做的原因是因为我可以说我将片段的大小设置为25并且它不会填满整个屏幕我将永远不会触发一个waypoint事件并获得更多条目。

我设法解决了这个问题:

function initWaypoint(){
    if($waypoint){
        $waypoint.destroy();
    }

    $waypoint = $("#waypoint").waypoint(function(){
        queryFragment();
    },{
        offset: 'bottom-in-view'
    })[0];
}

它会查询更多碎片,直到屏幕被填满,但是我觉得这个解决方案太脏了。仍然,完成工作,并没有给我带来任何性能问题。 有更好的方法吗?

1 个答案:

答案 0 :(得分:3)

你如何做到这一点正是Waypoints Infinite Scroll快捷方式在加载新项目后由destroying the waypointreinitializing the waypoint处理它的方式。