Interact.js is a powerful, flexible, snappable drag and drop, resizing and multi-touch gestures for modern browsers (and also IE8+) javascript library.
Features:
snapping to a grid, custom anchors or paths.
cross browser and device, supporting {Chrome,Firefox,Opera}’ ‘{mobile,desktop}’, ‘ and Internet Explorer 8+
interaction with SVG elements
being standalone (not yet another jQuery plugin)
introducing 0 additional DOM elements
having(a). fluent ().interface
not modifying anything it doesn’t own (except to support IE8 and to change the cursor (but you can disable that))