码迷,mamicode.com
首页 > Web开发 > 详细

(节流)js防止重复频繁点击或者点击过快方法

时间:2021-03-02 11:55:14      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:https   lse   ar9   logs   遮罩   gettime   function   com   func   

1.方法一:用定时器定时,没跑完定时器,点击按钮无效
<script>
    var isClick = true;
    $("button").on("click",function(){
        if(isClick) {
            isClick = false;
            //事件
            console.log(‘我被点击了‘);
            //定时器
            setTimeout(function() {
                isClick = true;
            }, 1000);//一秒内不能重复点击
        }else{
             console.log(‘请勿过快点击‘);
      }
    });
</script>

  

2.方法二:用两次时间差决定点击是否有效——参考地址如下:

https://www.cnblogs.com/clear93/p/8086374.html

var lastClick;   
lockClick(){
    var nowClick = new Date();
    if (lastClick === undefined) {
        lastClick = nowClick;
        return true;
    } else {
        if (Math.round((nowClick.getTime() - lastClick.getTime())) > 500) {
            lastClick = nowClick;
            return true;
        }
        else {
            lastClick = nowClick;
            return false
        }
    }
}
 
    this.on(‘click‘,()=>{
        if (this.lockClick()) {
            //你的函数代码
        }
    })

  

三.方法三:比如每次点击的时候给按钮一个500毫秒的遮罩闪现来遮盖按钮

 

(节流)js防止重复频繁点击或者点击过快方法

标签:https   lse   ar9   logs   遮罩   gettime   function   com   func   

原文地址:https://www.cnblogs.com/houxianzhou/p/14462157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!