jq implements double click event
The dblclick and click of jq are independent of each other. On the basis of triggering dblclick, two clicks will also be triggered.
Here is a demo that couples each other
var click = false;
$().on('click', function () {
if (click) {
// 双击
click = false;
} else {
click = true;
setTimeout(function () {
if (click) {
// 单击
click = false;
}
}.bind(this), 200)
}
});
Package:
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)
}
});
}