Drag & Drop

by StriplingWarrior

HTML

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/base/jquery-ui.css">
<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>

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 10px 10px 0; }

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!" );
            }
        });
    });