click-and-hold

2.0.0 • Public • Published

Click And Hold

Build Status

Will fire a handler throttled by an interval, continuously while user presses on element.

Supports touch.

Zero dependencies.

How to use:

Important to note: If your handler relies on scope, ensure it is called with the correct scope by binding the scope directly, or using the closure.

import clickAndHold from 'click-and-hold';
 
clickAndHold.register(element, handler.bind(theScopeYouWant), interval);
 
clickAndHold.unregister(element);

How it works:

When the element is first interacted with (mousedown, touchstart), we start a loop that will continuously try and call a passed handler on a passed interval. To avoid complexity, we store the interval and subsequent handlers on the element itself. Its only 50 something lines. Scope it.

Install:

npm install --save-dev click-and-hold

Upgrading

From 1.X.X -> 2.X.X, We are now using es6 module imports instead of common.js. Thinks like webpack/browserify/etc should be able to hang either way.

I am not trying to camp names on NPM, so if someone else wants this name just let me know and I will gladly take my repo down.

Readme

Keywords

none

Package Sidebar

Install

npm i click-and-hold

Weekly Downloads

133

Version

2.0.0

License

ISC

Unpacked Size

3.88 kB

Total Files

5

Last publish

Collaborators

  • greglarrenaga