A: 

You could always copy/paste the snap-part of the draggable.js and change some css values. That would be the easiest way to implement it, since the base is already written in jquery-ui.

Mike