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.
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)
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(/*...*/)