mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
c07ae398fa
Conflicts: demos/draggable/constrain-movement.html demos/draggable/cursor-style.html demos/draggable/handle.html demos/draggable/index.html demos/draggable/revert.html demos/draggable/visual-feedback.html demos/index.html ui/jquery.ui.draggable.js ui/jquery.ui.droppable.js
69 lines
2.6 KiB
HTML
69 lines
2.6 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>jQuery UI Draggable - Constrain movement</title>
|
|
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
|
|
<script src="../../jquery-1.8.2.js"></script>
|
|
<script src="../../ui/jquery.ui.core.js"></script>
|
|
<script src="../../ui/jquery.ui.widget.js"></script>
|
|
<script src="../../ui/jquery.ui.interaction.js"></script>
|
|
<script src="../../ui/jquery.ui.draggable.js"></script>
|
|
<link rel="stylesheet" href="../demos.css">
|
|
<style>
|
|
.draggable { width: 90px; height: 90px; padding: 0.5em; float: left; margin: 0 10px 10px 0; }
|
|
#draggable, #draggable2 { margin-bottom:20px; }
|
|
#draggable { cursor: n-resize; }
|
|
#draggable2 { cursor: e-resize; }
|
|
#containment-wrapper { width: 95%; height:150px; border:2px solid #ccc; padding: 10px; }
|
|
h3 { clear: left; }
|
|
</style>
|
|
<script>
|
|
$(function() {
|
|
$( "#draggable" ).draggable({
|
|
drag: function( event, ui ) {
|
|
ui.position.left = ui.originalPosition.left;
|
|
}
|
|
});
|
|
$( "#draggable2" ).draggable({
|
|
drag: function( event, ui ) {
|
|
ui.position.top = ui.originalPosition.top;
|
|
}
|
|
});
|
|
|
|
$( "#draggable3" ).draggable({ containment: "#containment-wrapper" });
|
|
$( "#draggable4" ).draggable({ containment: "#demo-frame" });
|
|
$( "#draggable5" ).draggable({ containment: "parent" });
|
|
});
|
|
</script>
|
|
</head>
|
|
<body>
|
|
|
|
<h3>Constrain movement along an axis:</h3>
|
|
|
|
<div id="draggable" class="draggable ui-widget-content">
|
|
<p>I can be dragged only vertically</p>
|
|
</div>
|
|
|
|
<div id="draggable2" class="draggable ui-widget-content">
|
|
<p>I can be dragged only horizontally</p>
|
|
</div>
|
|
|
|
<h3>Or to within another DOM element:</h3>
|
|
<div id="containment-wrapper">
|
|
<div id="draggable3" class="draggable ui-widget-content">
|
|
<p>I'm contained within the box</p>
|
|
</div>
|
|
|
|
<div class="draggable ui-widget-content">
|
|
<p id="draggable5" class="ui-widget-header">I'm contained within my parent</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="demo-description">
|
|
<p>Constrain the movement of each draggable by defining the boundaries of the draggable area. The <code>containment</code> option allows you to specify any element to use as a containing box; you can pass any selector or the string "parent".</p>
|
|
<p>The draggable element can also be constrained with custom logic inside a drag event handler. Modifying the <code>ui.position</code> object's <code>left</code> and/or <code>top</code> properties will change where the element will be positioned. In this example, we're forcing the top or left to always be the same as where it started, resulting in the element being confined to a specific axis.</p>
|
|
</div>
|
|
</body>
|
|
</html>
|