jQuery UI: Draggable
Draggable Elements
HTML
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/themes/overcast/jquery-ui.css">
<script src="http://www.pureexample.com/js/lib/jquery.ui.touch-punch.min.js"></script>
Slide to adjust dragging snap tolerance : <span id="info" style="color:red">10</span>
<div id="slider" style="width:300px"></div>
<br>
<div id="c1" class="container">
<div id="drag1" class="drag" style="left:20px;top:20px;">drag me</div>
<div id="drag2" class="drag" style="left:20px;top:50px;background-color:lightgray">drag me</div>
</div>
<div style="clear:both"/>
CSS
.drag {
width: 100px;
height: 100px;
line-height: 100px;
border: 1px solid black;
cursor: pointer;
border-radius: 10px;
text-align: center;
background-color: lightpink;
position: relative;
}
.container {
background-color: lightblue;
width: 500px;
height: 400px;
border: 1px solid black;
float: left;
margin-right: 30px;
}
JavaScript
$(".drag").draggable({
containment:"parent",
snap: true,
snapTolerance: 10
});
$("#slider").slider({
range: "min",
value: 10,
min: 10,
max: 50,
step: 1,
slide: function (event, ui) {
$("#info").html(ui.value);
$("#drag1").draggable("option", "snapTolerance", ui.value);
$("#drag2").draggable("option", "snapTolerance", ui.value);
}
});