This is probably a simple thing I am over looking, but I am trying to implement drag and drop on my website. It does not seem to be working though. I created a fiddle demo that is exhibiting the odd behavior. Here is my code:
$(function() {
$("li", "#hostsList").draggable({
revert: "invalid",
cursor: "move",
containment: "document"
});
$("#selectedHosts").droppable({
accept: "#hostsList > li",
drop: function(event, ui) {
alert("Dropped!");
}
});
In the fiddle, I am trying to drag "test #1" or "test #2" into the green div area, but it isn't working. Any help would be appreciated!
By default jQueryUI droppables are set to only accept draggables when at least 50% of its width is over the droppable area. Because you have not set a width on your draggables, they are much wider than double your droppables width.
You can remedy this by setting
on your droppable which will make it accept any element dropped when touching it as in this example or
which will cause your droppable to accept any draggable element that is dropped while the mouse pointer is over the droppable, as in this example.
Alternatively, you could set a width on your draggables which is less than twice the width of your droppable area, or combine a set width with one of the above options for a better user experience.