移动端防止多次点击

移动端防止多次点击,

实现思路

  • 在指定的时间内,不执行用户的操作;

技术核心

  • timer
  • cookie
timer 实现方式
// 定义全局变量
var isCalled = false, timer;

function igDoubleClick(callBack,interval) {
    
    if (!isCalled) {
        isCalled = true;
        clearTimeout(timer);
        timer = setTimeout(function(){
            isCalled = false;
        },interval);

        callBack();
    }
}
cookie 实现方式
        /**
     * 忽略多次点击
     * @param callBack 回调函数
     */
    igDoubleClick(callBack) {
        const nowTime = new Date().getTime();
        const clickTime = !tools.isEmpty(Cookies.get('firstTime')) ? Cookies.get('firstTime') : 0;

        if ((nowTime - clickTime) > 3000) {
            Cookies.set('firstTime', nowTime);
            callBack();
        }
    },

你可能感兴趣的:(移动端防止多次点击)