jQuery Scroll - 在进入/退出滚动区域时触发函数ONCE

时间:2014-08-29 23:47:25

标签: javascript jquery html scroll

我在JavaScript / jQuery(1.3.2)中工作,有两个功能: open()和close()

当基于我们将调用posY的页面上的预定义点时,需要调用这些函数。

一旦用户在posY下方滚动,就需要触发open函数,并且一旦人们再次向上滚动posY,就需要触发close函数。

使用jQuery滚动功能可以轻松完成。

我的问题是我只希望触发功能ONCE - 打开需要在进入时触发一次,而关闭需要在退出时触发一次。

我已经尝试了很多年了,不同的解决方案比我需要的东西变得越来越复杂。希望我是个白痴,错过了一个非常简单的解决方案。

对于这个项目,我不能使用1.3.2以上的任何jQuery功能,如果可以避免,我想避免添加任何外部插件。

提前致谢!

编辑:

我被要求添加一些示例代码。这是我在Stackoverflow上的一个不同帖子上找到的代码,我基于我的实验 - 我试图通过监视变量来阻止它不断触发,但它对我来说有点太复杂了。 :

$(window).on('scroll', function() {

var y_scroll_pos = window.pageYOffset;
var scroll_pos_test = 150;             // set to whatever you want it to be

if(y_scroll_pos > scroll_pos_test) {
    //do stuff
}
});

2 个答案:

答案 0 :(得分:4)

简单!

.unbind();

刚解开活动。 http://api.jquery.com/unbind/

答案 1 :(得分:0)

听起来你需要这个http://api.jquery.com/one/。需要查看一些代码以获得更好的解释。