我正在使用iframe的编辑器。在那个iframe我有一个jQuery可排序列表,在iframe之外我有可拖动的对象,我想在iframe中拖动。这一切都做得很好。
问题在于,当我在iframe中对列表进行排序并将光标移动到iframe之外时,该项仍然停留在光标上并且不在列表中。
http://jsfiddle.net/vxAzs/5/ 提琴手来自:Jquery Sortable and Draggable between parent and child frame
网页代码:
win = document.getElementById('frame').contentWindow;
element = win.document.getElementById('sortable');
$(element).sortable({iframefix:true});
$( "#draggable" ).draggable({
connectToSortable: $(element),
iframefix: true
});
iframe代码:
$("#sortable").sortable();
奇怪的是,即使您在iframe中对列表进行排序,也会调用所有事件(启动,停止,停用),但是当您将光标移动到iframe之外时,“父”排序函数会调用启动事件再次!不知何故,他们是联系在一起的,我无法阻止它......
尝试阻止同一事件的父调用(event.stopPropagation();),甚至在父类中创建一个函数,以便在iframe中排序时禁用sortable,但是没有任何影响......
在Google或堆栈上找不到这个。
提前感谢您的帮助!