aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demos/droppable/accepted-elements.html55
-rw-r--r--demos/droppable/propagation.html70
-rw-r--r--demos/droppable/visual-feedback.html70
3 files changed, 195 insertions, 0 deletions
diff --git a/demos/droppable/accepted-elements.html b/demos/droppable/accepted-elements.html
new file mode 100644
index 000000000..c8e809281
--- /dev/null
+++ b/demos/droppable/accepted-elements.html
@@ -0,0 +1,55 @@
+<!doctype html>
+<html lang="en">
+<head>
+ <title>jQuery UI Droppable - Accept Demo</title>
+ <link type="text/css" href="../../themes/base/ui.all.css" rel="stylesheet" />
+ <script type="text/javascript" src="../../jquery-1.3.js"></script>
+ <script type="text/javascript" src="../../ui/ui.core.js"></script>
+ <script type="text/javascript" src="../../ui/ui.draggable.js"></script>
+ <script type="text/javascript" src="../../ui/ui.droppable.js"></script>
+ <link type="text/css" href="../demos.css" rel="stylesheet" />
+ <style type="text/css">
+ #droppable { width: 150px; height: 150px; padding: 0.5em; float: left; margin: 10px; }
+ #draggable, #draggable-nonvalid { width: 100px; height: 100px; padding: 0.5em; float: left; margin: 10px; }
+ </style>
+ <script type="text/javascript">
+ $(function() {
+
+ $("#draggable, #draggable-nonvalid").draggable();
+
+ $("#droppable").droppable({
+ accept: '#draggable',
+ activeClass: 'ui-state-hover',
+ hoverClass: 'ui-state-active',
+ drop: function(event, ui) {
+ $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
+ }
+ });
+
+ });
+ </script>
+</head>
+<body>
+<div class="demo">
+
+<div id="draggable-nonvalid" class="ui-widget-content">
+ <p>I'm draggable but can't be dropped</p>
+</div>
+
+<div id="draggable" class="ui-widget-content">
+ <p>Drag me to my target</p>
+</div>
+
+<div id="droppable" class="ui-widget-header">
+ <p>accept: '#draggable'</p>
+</div>
+
+</div><!-- End demo -->
+
+<div class="demo-description">
+
+<p>Specify using the <strong>accept</strong> option which element (or group of elements) is accepted by the target droppable.</p>
+
+</div><!-- End demo-description -->
+</body>
+</html>
diff --git a/demos/droppable/propagation.html b/demos/droppable/propagation.html
new file mode 100644
index 000000000..5911d2f1a
--- /dev/null
+++ b/demos/droppable/propagation.html
@@ -0,0 +1,70 @@
+<!doctype html>
+<html lang="en">
+<head>
+ <title>jQuery UI Droppable - Prevent propagation</title>
+ <link type="text/css" href="../../themes/base/ui.all.css" rel="stylesheet" />
+ <script type="text/javascript" src="../../jquery-1.3.js"></script>
+ <script type="text/javascript" src="../../ui/ui.core.js"></script>
+ <script type="text/javascript" src="../../ui/ui.draggable.js"></script>
+ <script type="text/javascript" src="../../ui/ui.droppable.js"></script>
+ <link type="text/css" href="../demos.css" rel="stylesheet" />
+ <style type="text/css">
+ #draggable { width: 100px; height: 40px; padding: 0.5em; float: left; margin: 10px; }
+ #droppable, #droppable2 { width: 230px; height: 120px; padding: 0.5em; float: left; margin: 10px; }
+ #droppable-inner, #droppable2-inner { width: 170px; height: 60px; padding: 0.5em; float: left; margin: 10px; }
+ </style>
+ <script type="text/javascript">
+ $(function() {
+
+ $("#draggable").draggable();
+
+ $("#droppable, #droppable-inner").droppable({
+ activeClass: 'ui-state-hover',
+ hoverClass: 'ui-state-active',
+ drop: function(event, ui) {
+ $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
+ }
+ });
+
+ $("#droppable2, #droppable2-inner").droppable({
+ greedy: true,
+ activeClass: 'ui-state-hover',
+ hoverClass: 'ui-state-active',
+ drop: function(event, ui) {
+ $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
+ }
+ });
+
+ });
+ </script>
+</head>
+<body>
+<div class="demo">
+
+<div id="draggable" class="ui-widget-content">
+ <p>Drag me to my target</p>
+</div>
+
+<div id="droppable" class="ui-widget-header">
+ <p>Outer droppable</p>
+ <div id="droppable-inner" class="ui-widget-header">
+ <p>Inner droppable (not greedy)</p>
+ </div>
+</div>
+
+<div id="droppable2" class="ui-widget-header">
+ <p>Outer droppable</p>
+ <div id="droppable2-inner" class="ui-widget-header">
+ <p>Inner droppable (greedy)</p>
+ </div>
+</div>
+
+</div><!-- End demo -->
+
+<div class="demo-description">
+
+<p>When working with nested droppables &#8212; for example, you may have an editable directory structure displayed as a tree, with folder and document nodes &#8212; the <strong>greedy</strong> option set to true prevents event propagation when a draggable is dropped on a child node (droppable).</p>
+
+</div><!-- End demo-description -->
+</body>
+</html>
diff --git a/demos/droppable/visual-feedback.html b/demos/droppable/visual-feedback.html
new file mode 100644
index 000000000..1e3f233eb
--- /dev/null
+++ b/demos/droppable/visual-feedback.html
@@ -0,0 +1,70 @@
+<!doctype html>
+<html lang="en">
+<head>
+ <title>jQuery UI Droppable - Visual feedback</title>
+ <link type="text/css" href="../../themes/base/ui.all.css" rel="stylesheet" />
+ <script type="text/javascript" src="../../jquery-1.3.js"></script>
+ <script type="text/javascript" src="../../ui/ui.core.js"></script>
+ <script type="text/javascript" src="../../ui/ui.draggable.js"></script>
+ <script type="text/javascript" src="../../ui/ui.droppable.js"></script>
+ <link type="text/css" href="../demos.css" rel="stylesheet" />
+ <style type="text/css">
+ #draggable, #draggable2 { width: 90px; height: 90px; padding: 0.5em; float: left; margin: 10px; }
+ #droppable, #droppable2 { width: 120px; height: 120px; padding: 0.5em; float: left; margin: 10px; }
+ </style>
+ <script type="text/javascript">
+ $(function() {
+ $("#draggable").draggable();
+ $("#droppable").droppable({
+ hoverClass: 'ui-state-active',
+ drop: function(event, ui) {
+ $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
+ }
+ });
+
+ $("#draggable2").draggable();
+ $("#droppable2").droppable({
+ activeClass: 'ui-state-hover',
+ hoverClass: 'ui-state-active',
+ drop: function(event, ui) {
+ $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
+ }
+ });
+
+ });
+ </script>
+</head>
+<body>
+<div class="demo">
+
+<h3 class="docs">Feedback on hover only:</h3>
+
+<div id="draggable" class="ui-widget-content">
+ <p>Drag me to my target</p>
+</div>
+
+<div id="droppable" class="ui-widget-header">
+ <p>Drop here</p>
+</div>
+
+<h3 class="docs">Feedback on hover and when dropped:</h3>
+
+<div id="draggable2" class="ui-widget-content">
+ <p>Drag me to my target</p>
+</div>
+
+<div id="droppable2" class="ui-widget-header">
+ <p>Drop here</p>
+</div>
+
+<!-- add active class demo -->
+
+</div><!-- End demo -->
+
+<div class="demo-description">
+
+<p>Change the droppable's appearance on hover, or when the droppable is active (an acceptable draggable is dropped on it). Use the <strong>hoverClass</strong> or <strong>activeClass</strong> options to specify respective classes.</p>
+
+</div><!-- End demo-description -->
+</body>
+</html>