Jquery可在父框架和子框架之间进行排序和拖拽

ksb*_*ksb 5 javascript jquery jquery-ui jquery-ui-sortable jquery-ui-draggable

我试图在父框架和子框架之间实现jQuery Draggable | Droppable | Sortable.我有一个这样的原型,但有一些奇怪的行为发生

win = document.getElementById('frame').contentWindow;

element = win.document.getElementById('sortable');
$(element).sortable();
console.log(element);
$( "#draggable" ).draggable({
      connectToSortable: $(element),
     iframefix: true,
    helper: function() {return $("<div/>").css('background-color','red');}
});
Run Code Online (Sandbox Code Playgroud)

iframe页面还包含

$("#sortable").sortable();
Run Code Online (Sandbox Code Playgroud)

这是jsfiddle http://jsfiddle.net/vxAzs/5/

当我尝试将元素放在iframe上时,它工作正常,但是当我尝试对iframe上的元素进行排序时,元素会粘到我认为的两个页面的click事件上(所以在我点击两个父项之前它不会被删除和iframe).我认为这与父和iframe中的.sortable()调用有关,但如果我删除了droppable停止工作.

ksb*_*ksb 3

好的,这就是我的做法。为了在父框架的元素上创建拖动并将其放入 iframe 中的可排序列表中,我从 iframe 内部在父框架的元素上创建了可拖动的

win = document.getElementById('<identifier for Iframe>').contentWindow;
win.jQuery(dragelement,parent.document).draggable({
connectToSortable : $("#sortable")
)}
Run Code Online (Sandbox Code Playgroud)

奇迹般有效!