Live Droppable UI元素仅在第二次尝试时接受Drop
我有通过Ajax动态添加到页面的JQuery UI Droppables。 尝试按照指南以实时方式连接Droppables:
jQuery UI Droppable:如何让它生效?
在第一次尝试拖放时, hoverClass
没有挂钩,也没有hoverClass
目标是已注册的Droppable
(放置事件处理程序不会触发)。 在后续尝试中,它按预期工作。
小提琴: http : //jsfiddle.net/ericjohannsen/ESCN9/
如何让dropfunction第一次运行?
只有当您将鼠标hover在“ctFilterDropArea”元素上并启动实时可放置function时,您的代码才有效。
拖动另一个div后,尝试启动liveDroppable实现。
JSFiddle: – http://jsfiddle.net/ESCN9/3/
$.fn.liveDroppable = function (opts) { if (!$(this).data("ctDropInit")) { $(this).data("ctDropInit", true).droppable(opts); } }; $('#dragMe').draggable({ cursor: "move", distance: 20, opacity: 0.7, helper: 'clone', start: startDroppable }); function startDroppable() { $('#ctFilterDropArea').liveDroppable({ hoverClass: "ctDropHover", drop: function (event, ui) { alert("Dropped!"); } }); }