window--resize防抖


function debounce(operate, delay) {
    let time = null
    let timer = null
    let newTime = null
    function task() {
        newTime = +new Date()
        if(newTime - time < delay){
            timer = setTimeout(task, delay)
        }else {
            operate()
            timer = null
        }
        time = newTime
    }
    return function () {
        // 更新时间戳
        time = +new Date()
        if(!timer){
            timer = setTimeout(task, delay)
        }
    }
}

function task() {
        dosomething...
}

window.addEventListener('resize', debounce(task, 300), false)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。