js scroll 滚动连续多次触发事件怎么只执行一次
答案:2 悬赏:30 手机版
解决时间 2021-02-13 13:23
- 提问者网友:轮囘Li巡影
- 2021-02-13 00:04
js scroll 滚动连续多次触发事件怎么只执行一次
最佳答案
- 五星知识达人网友:思契十里
- 2021-02-13 00:38
设置一个全局变量is_running = false
然后再你scroll触发的事件方法的开头加上一个if判断,如果is_running==false就先把is_running=true,然后执行方法。
在执行结束的末尾,把is_running=false改回来表示执行结束,
这相当于加锁和解锁的过程,在is_running==true的期间就算触发了此方法也不会真正执行的
所以连续触发时只执行一次。当然你在方法执行过程中最好有异常捕获,以防执行到一半出错了,is_running 一直是true,然后永远执行不了了
然后再你scroll触发的事件方法的开头加上一个if判断,如果is_running==false就先把is_running=true,然后执行方法。
在执行结束的末尾,把is_running=false改回来表示执行结束,
这相当于加锁和解锁的过程,在is_running==true的期间就算触发了此方法也不会真正执行的
所以连续触发时只执行一次。当然你在方法执行过程中最好有异常捕获,以防执行到一半出错了,is_running 一直是true,然后永远执行不了了
全部回答
- 1楼网友:我住北渡口
- 2021-02-13 01:12
这样设置个全局变量 var a =0,然后scroll后,if(a==0) 执行代码,然后a++.不就执行一次
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯