JavaScript drag and drop, resizing and multi-touch gestures with inertia and snapping for modern browsers (and also IE9+).
Features include:
- inertia and snapping
- multiple interactions
- cross browser and device, supporting the desktop and mobile versions of Chrome, Firefox and Opera as well as Internet Explorer 9+
- interaction with SVG elements
- being lightweight and standalone (not yet another jQuery plugin)
- not modifying the DOM except to change the cursor (but you can disable that)
Installation
- Bower:
bower install interactjs
- npm:
npm install interactjs
- Webjars SBT/Play 2:
libraryDependencies ++= Seq("org.webjars.bower" % "interact.js" % "1.2.8")
- Direct download the latest version: http://interactjs.io/#download
- Rails 4 app development (using Rails Asset Pipeline)
- Download the file interact.js (development version) into a new sub-directory: vendor/assets/javascripts/interact
- Add
//= require interact/interact
in app/assets/javascripts/application.js (above//= require_tree .
) - Restart the Rails server
- Rails 4 app development (using Rails Asset Pipeline)
- jsDelivr CDN:
<script src="//cdn.jsdelivr.net/npm/interactjs@1.2.9/dist/interact.min.js"></script>
- cdnjs CDN:
<script src="//cdnjs.cloudflare.com/ajax/libs/interact.js/1.2.8/interact.min.js"></script>
Documentation
Visit http://interactjs.io/docs for the API documentation.
Example
var pixelSize = 16; // draw colored squares on move // clear the canvas on doubletap ; { forEach; } // interact.js can also add DOM event listeners ; ;
See the above code in action at http://codepen.io/taye/pen/YPyLxE
License
interact.js is released under the MIT License.