You will need to install a user script manager extension to install this script.
This script should not be not be installed directly. It is a library for other scripts to include with the meta directive
// @require https://greasyfork.org/scripts/428696-ckholdclick/code/CKHoldClick.js?version=945692
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(/*...*/)