【发布时间】:2012-12-03 23:07:41
【问题描述】:
我已经尝试了很长时间,但没有任何运气,我决定在这里问。
我正在使用 jquery ui 库创建拖放 div。
目前,我在页面上动态添加了许多带有“父”类的 div:
$( ".parent" ).droppable({
accept: ".child",
activeClass: "ui-state-hover",
hoverClass: "ui-state-active",
tolerance:'touch',
drop: function( event, ui ) {
$( this )
.addClass( "ui-state-highlight" )
.find( "p" )
.html( "Dropped!" ).appendTo(ui.Target);
}
});
然后,我使用“child”类动态创建一个 div,并且可以将子 div 拖放到任何父 div 中。请注意,对于父级 droppable,容差设置为“触摸”
$( ".child" ).draggable();
父 div 的大小比子 div 小。 每当我拖动一个子 div 并将其移动到两个父 div 上时(请注意,此时我还没有删除子 div),理想情况下,我希望子 div 仅被拖放到第一个父 div 中。
发生的情况是子 div 被附加到第一个父 div 中。然后它从第一个父 div 移动到第二个父 div。
有没有办法让子 div 保持可拖动但只能拖放到第一个父 div 中?
感谢阅读。
如果不清楚,请告诉我,我会改写它
将子级拖到父级 2 和 3 上显示相同的行为: http://jsfiddle.net/Dyawa/3/
【问题讨论】:
-
如果有 jsFiddle 配合的话会容易理解很多。
-
那么,您希望将子 div 拖放到您悬停在上方的第一个 div 上(即使您将其放在第二个 div 上)?
-
是的,想象子 div 的大小是 x3,我可以将它悬停在父 div 1 和父 div 2 上(所以两个 div 都可以接受它)但是当我放下它时,我希望它只是放入第一个父 div(不是第二个)。现在,子 div 进入父 div 1,然后进入父 div 2。
-
jsfiddle.net/Dyawa - 请更新此内容以显示您的意思...
-
jsfiddle.net/Dyawa/3如果你把child拖到parent 2和3上,你会看到效果
标签: javascript jquery