zoukankan      html  css  js  c++  java
  • 【JavaScript】jQuery 实现耦合的鼠标单击与双击事件

    jq 实现单击双击事件

    jq 的 dblclick 和 click 互相独立,在触发 dblclick 的基础上也会触发两次 click
    这里演示一种使其互相耦合的 demo

    var click = false;
    $().on('click', function () {
        if (click) {
            // 双击
            click = false;
    
        } else {
            click = true;
            setTimeout(function () {
                if (click) {
                    // 单击
                    click = false;
                }
            }.bind(this), 200)
        }
    });
    
    

    封装:

    function dblclick(elementSelector, childSelector, dblCallback, clickCallback = undefined) {
        var click = false;
        $(elementSelector).on('click', childSelector || '', function () {
            if (click) {
                // 双击
                click = false;
                dblCallback.bind(this)();
            } else {
                click = true;
                setTimeout(function () {
                    if (click) {
                        // 单击
                        console.log(this);
    
                        click = false;
                        clickCallback && clickCallback.bind(this)();
                    }
                }.bind(this), 200)
            }
        });
    }
    
  • 相关阅读:
    代码
    怎么创建scrollview
    tcp/Ip http
    游戏道具
    FPS interv
    调整音乐
    插入排序
    冒泡排序
    JSON详解
    设计模式系列(2) 工厂模式之简单工厂模式
  • 原文地址:https://www.cnblogs.com/gaolihai/p/13149753.html
Copyright © 2011-2022 走看看