summaryrefslogtreecommitdiffstats
path: root/README.md
blob: f3108a98b12eecae349c3c77b83a9d388a6a5913 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# Tap listener

_Listens to taps_

On mobile devices, the `click` event is triggered after a delay. Tap Listener listens for native touch and pointer events to trigger a callback immediately.

Used in [Flickity](http://flickity.metafizzy.co).

``` js
var tapper = new TapListener( element );
tapper.on( 'tap', function( event ) {
  console.log('tap happened');
});
```

Use `TapListener` to extend a class.

``` js
function Widget() {
  //...
}
// inherit Tap Listener
Widget.prototype = new TapListener();
// or
_.extend( Widget.prototype, TapListener.prototype );

var widgy = new Widget( element );
widgy.on( 'tap', function() {...});
```

## Install

Bower: `bower install tap-listener --save`

npm: `npm install tap-listener`

### RequireJS

``` js
requirejs( [ 'path/to/tap-listener' ], function( TapListener ) {
  var tapper = new TapListener( element );
});
```

### Browserify

``` js
var TapListener = require('tap-listener');
var tapper = new TapListener( element );
```

## API

``` js
var tapper = new TapListener( element )
// element {Element} - binds tap events to element

tapper.bindTap( element )
// element {Element} - binds tap events to element

tapper.unbindTap()
// unbinds tap events

tapper.on( eventName, callback )
// eventName {String} - tap, pointerDown, pointerMove, pointerUp, pointerCancel
// callback {Function}

function callback( event, pointer ) {...}
// event {Event} - the original mouseup, touchend, or pointerup event
// pointer {Event} or {Touch} - event object with pageX and pageY

tapper.destroy()
// unbinds tap events
```

---

MIT license

By [Metafizzy](http://metafizzy.co)