This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://update.greasyfork.org/scripts/428696/945692/CKHoldClick.js
A simple library to let doms could be hold with mouse events.
Noticed that this library depends on CKEventEmitter.lib.js, for more details check out the source code.
Usages
Step1: Init a HoldClick instance
To process holding event with HoldClick, you need to create a HoldClick instance for a single dom.
const dom = document.querySelector("#dom")
const hc = new HoldClick(dom)
Step2: Register Click and Hold events
Because HoldClick implementions, click events and other evnets like that is not recommended to use, HoldClick provided a interface to process click events and hold events.
hc.onclick(/* func */)
hc.onhold(/* func */)
Your function will recieve a paramater, that will be one of mouse down / mouse up / mouse out event object. It's not sure for which event you will recieved, it depended on users actions.
** tip **
For more readable intent, HoldClick supports chain-style calling, you can use HoldClick like below:
new HoldClick(dom)
.onclick(/*...*/)
.onhold(/*...*/)