对于短时间内连续触发的事件(上面的滚动事件),防抖的含 义就是让某个时间期限(如上面的1000毫秒)内,事件处理函 数只执行一次!
防抖严格算起来应该属于性能优化的知识,但实际上遇到的频率相 当高,处理不当或者放任不管就容易引起浏览器卡死。
例如:滚动条触发事件,执行频率太高了!
基于上述场景,首先提出第一种思路:在第一次触发事件时,不立 即执行函数,而是给出一个期限值比如200ms,然后
如果在200ms内没有再次触发滚动事件,那么就执行函数
如果在200ms内再次触发滚动事件,那么当前的计时取消,重新开始计时
效果:如果短时间内大量触发同一事件,只会执行一次函数。
Document 哈哈哈
哈哈哈
哈哈哈
哈哈哈
哈哈哈
哈哈哈