因此,我一直在为我目前正在从事的项目摆弄 jQuery Waypoints。我过去使用过它并且没有遇到任何问题,但是对于这个特定的项目,我似乎无法让它工作。这一次的不同之处在于所有内容都注入了 JavaScript,尽管这不应该是一个问题,因为您$.waypoints('refresh');
可以简单地更新航点位置。
由于内容是动态创建的,因此我引入了一个计时器,以确保在脚本初始化之前加载内容。
$(document).ready(function(){
setTimeout(function(){
waypoints();
$.waypoints('refresh');
}, 2000);
});
function waypoints() {
alert('jQuery Waypoint has initialized');
//ep.listener.waypoints()
$(function() {
var $things = $('article.curr section');
$things.waypoint(function(direction) {
if (direction === 'down') {
//do stuff
console.log(this);
console.log('down');
}
}, { offset: '50%' });
$things.waypoint(function(direction) {
if (direction === 'up') {
//do stuff
console.log(this);
console.log('up');
}
}, {
offset: function() {
return $.waypoints('viewportHeight') / 2 - $(this).outerHeight();
}
});
});
}
所发生的情况是航点仅被触发一次,并且仅触发一次。除非您滚动到底部并刷新页面,否则它将识别最上面的部分,否则它将识别所有四个元素。
我在这里做错了什么?
现场演示在这里
用户名:dev
密码:lolboy