Javascript jQuery航路点触发一次
我正在使用和 当用户向下滚动到具有类Javascript jQuery航路点触发一次,javascript,jquery,jquery-waypoints,Javascript,Jquery,Jquery Waypoints,我正在使用和 当用户向下滚动到具有类div1的区域时,我需要执行一些操作。但是,我需要它只触发一次,而不是每次用户滚动到该位置时仅一次 $('.div1').waypoint(function(direction) { alert(CARRY OUT MY ACTION); }); 这只需要在第一次滚动到该部分时发生-向上或向下。如果将第二个参数传递给航路点()函数,则可以包含一个配置选项对象。将triggerOnce选项设置为true将使插件按照您希望的方式运行 $('.div1'
div1
的区域时,我需要执行一些操作。但是,我需要它只触发一次,而不是每次用户滚动到该位置时仅一次
$('.div1').waypoint(function(direction)
{
alert(CARRY OUT MY ACTION);
});
这只需要在第一次滚动到该部分时发生-向上或向下。如果将第二个参数传递给
航路点()
函数,则可以包含一个配置选项对象。将triggerOnce
选项设置为true将使插件按照您希望的方式运行
$('.div1').waypoint(function(direction)
{
alert('CARRY OUT MY ACTION');
},
{
triggerOnce: true
});
在新的API中,似乎不再有triggerOnce选项,但在第一次调用后,仍然可以使用
航路点.disable()
方法triggerOnce()
替换为destroy()
。
只需添加this.destroy()
有关更多选项,请检查。答案是在处理程序函数末尾使用
this.destroy()
。下面是一个可行的示例:
$('.div1').waypoint(function(direction){
handler: function(direction) {
alert('CARRY OUT MY ACTION');
this.destroy();
}
});
另请参见文档 请注意,航路点API在版本3.0中已更改。是否有办法销毁处理程序中特定元素中的所有航路点?
$('.div1').waypoint(function(direction){
handler: function(direction) {
alert('CARRY OUT MY ACTION');
this.destroy();
}
});