if (! HTMLElement.prototype.addTapEvent) {
HTMLElement.prototype.addTapEvent = function (callback) {
var tapstarttime = 0,
Tapendtime = 0,
Taptime = $,//tap wait time, releasing the trigger method under this event
Tapstartclientx = 0,
Tapstartclienty = 0,
Tapendclientx = 0,
Tapendclienty = 0,
Tapscollheight = 15,//move more than 15px in horizontal or vertical direction the measurement is canceled (the amount of the click is canceled based on the default decision of Chrome browser)
Cancleclick = false;
This.addeventlistener (' Touchstart ', function () {
Tapstarttime = Event.timestamp;
var touch = event.changedtouches[0];
Tapstartclientx = Touch.clientx;
Tapstartclienty = Touch.clienty;
Cancleclick = false;
})
This.addeventlistener (' Touchmove ', function () {
var touch = event.changedtouches[0];
Tapendclientx = Touch.clientx;
Tapendclienty = Touch.clienty;
if ((Math.Abs (TAPENDCLIENTX-TAPSTARTCLIENTX) > Tapscollheight) | | (Math.Abs (Tapendclienty-tapstartclienty) > Tapscollheight)) {
Cancleclick = true;
}
})
This.addeventlistener (' Touchend ', function () {
Tapendtime = Event.timestamp;
if (!cancleclick && (tapendtime-tapstarttime) <= taptime) {
Callback ();
}
})
}
}
Call
Element.addtapevent (function () {})
Mobile-click events