用户暴力连点处理方法

当用户使用时,点击按钮等操作时反应慢就会出现暴力点击问题,设置一定时间内不重复执行点击操作

//连点t毫秒内不重复执行

function stopClick(_this,t,succ) {

    if(!_this.firstTime){//首次点击,记录时间并执行回调操作

        _this.firstTime= new Date()

        _this.$nextTick(()=>{

            if(typeof(succ)=="function"){

                succ()

            }

        })

    }else{

        let nowTime= new Date()

        let dateDiff = nowTime - _this.firstTime

        //非首次点击则判断是否是t毫秒后,是,执行回调并把当前时间设定为首次点击时间;否:不执行

        if(dateDiff>t){

            _this.firstTime= nowTime

             _this.$nextTick(()=>{

                if(typeof(succ)=="function"){

                    succ()

                }

            })

        }

    }

}

//vue页面使用:(2500毫秒内连点不执行点击操作)

stopClick(this,2500,()=>{

    //后续点击操作

})

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

推荐阅读更多精彩内容