gpt4 book ai didi

javascript - 防止 jQuery 操作在滚动时第二次发生

转载 作者:行者123 更新时间:2023-12-03 10:48:10 25 4
gpt4 key购买 nike

我有一些代码可以检测某个元素是否在视口(viewport)中,然后触发一些代码,它通过计算滚动时距顶部的距离来实现这一点,我遇到的问题是它每次都重新运行代码发生滚动事件并且元素位于折叠上方,有没有办法让它只触发一次?

$(document).ready(function(){
$(document).scroll(function(){
var scrollTop = $(window).scrollTop(),
elementOffset = $('.numbers').offset().top,
distance = (elementOffset - scrollTop);

if(distance < $(window).height()){
$('.ones').delay(1000).hide(1000, function(){
$(this).html('6').show(1000, function(){
$(this).delay(15000).hide(1000, function(){
$(this).html('5').show(1000);
});
});
});
}else{
return false;
}
});
});

最佳答案

添加

flag=true

文档准备好后,立即在 if 中检查

if (distance<... && flag===true)

并在 if 子句中将其设置为 false

flag = false

关于javascript - 防止 jQuery 操作在滚动时第二次发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28490029/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com