Skip to content
Hand.js is a polyfill for supporting pointer events on every browser
Branch: master
Clone or download
Latest commit 44b21f1 Sep 24, 2015
Type Name Latest commit message Commit time
Failed to load latest commit information.
samples adding buttons support Jun 23, 2015
.gitattributes line normalization Jun 14, 2015
bower.json Project folders update May 26, 2015
package.json Update Sep 24, 2015


Hand.js is now discontinued in favor of jQuery PEP:


Starting in September 2012, Microsoft proposed a specification for unifying touch, pen and mouse events called pointer events.

Modern browsers are not yet all supporting it right. Only Internet Explorer 10+ and Microsoft Edge support it.

Hand.js is a polyfill that will allow you to write your code about touch only once even if the browser does not support pointer events.

Write once, use it everywhere! Don't bother with mouse and touch events. Pointer events are here for you.

You can find a test page right here:


You can use npm install handjs or bower install handjs to install it locally


Hand.js supports the following;

  • Works on IE9+, Chrome, Firefox, Opera, Safari
  • Support for:
  • pointerdown
  • pointermove
  • pointerup
  • pointercancel
  • pointerenter
  • pointerleave
  • pointerout
  • pointerover
  • Fallback to mouse
  • CSS analysis to support touch-action:none (can be disabled with HANDJS.doNotProcessCSS = true; )
  • Seamless integration into your pages

You can also find a complete blog about hand.js:

Another article about pointer events and hand.js:

You can’t perform that action at this time.