使用onresize事件监听页面变化时,会出现一次小的变化该事件触发多次的情况
解决方案: 结合setTimeout使该方法在一定时间内只触发一次(即节流) 以vue项目为例
data(){
return {
resizeTimer: null
}
},
methods() {
useResize() {
window.onresize = () => {
if(this.resizeTimer){
clearTimeout(this.resizeTimer)
}
this.resizeTimer = setTimeout(() => {
// dosometing....
}, 500)
}
}
}