【发布时间】:2013-05-24 09:01:16
【问题描述】:
我们目前正在尝试实现 jQuery UI 提供的可拖动对象和可排序对象之间的跨帧拖动。这现在工作正常。但是,当从父框架拖动到子框架时,鼠标偏移似乎关闭了——请看这个小提琴:http://jsfiddle.net/r5nfe/6/。
父代码:
$('#my-frame').load(function () {
$('.draggable').draggable({
appendTo: 'body',
helper: 'clone',
iframeFix: true,
revert: 'invalid',
connectToSortable: $('#my-frame').contents().find('.sortable'),
cursorAt: { top: 0, left: 0 }
});
$('#my-frame').contents().find('.sortable').sortable({
iframeFix: true,
cursorAt: { top: 0, left: 0 }
});
});
子框架中的代码:
var containers = $('.sortable');
containers.sortable({
connectWith: containers,
cursor: 'move',
revert: true,
cursorAt: { top: 0, left: 0 }
});
谁能告诉我们如何修复鼠标偏移?
【问题讨论】:
-
解决方案精炼,可在文章开头查看更新
-
这个项目解决了 droppables 的问题:github.com/maxazan/jquery-ui-droppable-iframe。但它不适用于可排序(github.com/maxazan/jquery-ui-droppable-iframe/issues/2),并且作者似乎没有维护这个项目。我认为解决方案可能是类似的,需要在
sortable.refreshPositions();内修复 jQueryUi 中的某些内容 -
这里有一个非常相似的问题:stackoverflow.com/questions/34482689/…
标签: javascript iframe jquery-ui-sortable jquery-ui-droppable