2009-01-15 20:17:49 +00:00
<!doctype html>
< html lang = "en" >
< head >
2009-01-15 21:57:33 +00:00
< title > jQuery UI Draggable - Snap to element or grid< / title >
2009-01-15 20:17:49 +00:00
< link type = "text/css" href = "../../themes/base/ui.all.css" rel = "stylesheet" / >
2010-01-27 12:29:43 +00:00
< script type = "text/javascript" src = "../../jquery-1.4.1.js" > < / script >
2009-09-17 10:39:12 +00:00
< script type = "text/javascript" src = "../../ui/jquery.ui.core.js" > < / script >
2009-12-16 22:20:18 +00:00
< script type = "text/javascript" src = "../../ui/jquery.ui.widget.js" > < / script >
2009-12-22 19:51:24 +00:00
< script type = "text/javascript" src = "../../ui/jquery.ui.mouse.js" > < / script >
2009-09-17 10:39:12 +00:00
< script type = "text/javascript" src = "../../ui/jquery.ui.draggable.js" > < / script >
2009-01-15 20:17:49 +00:00
< link type = "text/css" href = "../demos.css" rel = "stylesheet" / >
< style type = "text/css" >
2009-02-27 04:06:52 +00:00
.draggable { width: 90px; height: 80px; padding: 5px; float: left; margin: 0 10px 10px 0; font-size: .9em; }
2009-01-15 20:17:49 +00:00
.ui-widget-header p, .ui-widget-content p { margin: 0; }
#snaptarget { height: 140px; }
< / style >
< script type = "text/javascript" >
$(function() {
$("#draggable").draggable({ snap: true });
$("#draggable2").draggable({ snap: '.ui-widget-header' });
$("#draggable3").draggable({ snap: '.ui-widget-header', snapMode: 'outer' });
2009-01-15 21:57:33 +00:00
$("#draggable4").draggable({ grid: [20,20] });
$("#draggable5").draggable({ grid: [80, 80] });
2009-01-15 20:17:49 +00:00
});
< / script >
< / head >
< body >
< div class = "demo" >
< div id = "snaptarget" class = "ui-widget-header" >
< p > I'm a snap target< / p >
< / div >
< br clear = "both" / >
2009-01-15 21:57:33 +00:00
< div id = "draggable" class = "draggable ui-widget-content" >
2009-01-15 20:17:49 +00:00
< p > Default (snap: true), snaps to all other draggable elements< / p >
< / div >
2009-01-15 21:57:33 +00:00
< div id = "draggable2" class = "draggable ui-widget-content" >
2009-01-15 20:17:49 +00:00
< p > I only snap to the big box< / p >
< / div >
2009-01-15 21:57:33 +00:00
< div id = "draggable3" class = "draggable ui-widget-content" >
2009-01-30 05:13:33 +00:00
< p > I only snap to the outer edges of the big box< / p >
2009-01-15 20:17:49 +00:00
< / div >
2009-01-15 21:57:33 +00:00
< div id = "draggable4" class = "draggable ui-widget-content" >
< p > I snap to a 20 x 20 grid< / p >
2009-01-15 20:17:49 +00:00
< / div >
2009-01-15 21:57:33 +00:00
< div id = "draggable5" class = "draggable ui-widget-content" >
< p > I snap to a 80 x 80 grid< / p >
2009-01-15 20:17:49 +00:00
< / div >
< / div > <!-- End demo -->
< div class = "demo-description" >
2009-01-28 10:49:44 +00:00
< p > Snap the draggable to the inner or outer boundaries of a DOM element. Use the < code > snap< / code > , < code > snapMode< / code > (inner, outer, both), and < code > snapTolerance< / code > (distance in pixels the draggable must be from the element when snapping is invoked) options. < / p >
2009-01-15 21:57:33 +00:00
2009-01-28 10:49:44 +00:00
< p > Or snap the draggable to a grid. Set the dimensions of grid cells (height and width in pixels) with the < code > grid< / code > option.< / p >
2009-01-15 20:17:49 +00:00
< / div > <!-- End demo - description -->
< / body >
< / html >