这一次,我有一个滑块,它应该运行每一次,当它是可见的,并停止当它是隐藏的(窗外)。我有所有的代码工作,但我不知道如何暂时块滚动事件。
代码:
$(window).on('scroll', function() {
if ($('.tour-slider').visible(true)) {
slideshow();
$(window).off('scroll');
}else{
anim1.pause();
anim2.pause();
anim3.pause();
$('#slider-1').siblings().hide();
}
});此代码工作,但只有一次,如果旅游滑块是可见的,那么滚动事件关闭,就这样。但是,我只想阻止滚动事件时,用户看到元素,旅游滑块,在其他情况下,这个事件应该再次工作。
在滚动>如果.旅游-滑块可见做关闭滚动>如果.旅游-滑块隐藏再次滚动
有什么建议吗?
发布于 2014-04-24 12:08:20
您可以添加一个标志,以了解您的动画是否已启动,并保持事件绑定。
就像这样:
var _animated = false;
var Slideshow = {
start: function () {
if (_animated) return;
_animated = true;
// start slideshow
},
stop: function () {
if (!_animated) return;
_animated = false;
// stop animation
}
};
$(window).on('scroll', function () {
if ($('.tour-slider').visible(true)) {
Slideshow.start();
} else {
Slideshow.stop();
}
});https://stackoverflow.com/questions/23268192
复制相似问题