背景:我有一个可拖动的对象,我将其放入可拖放的可拖动对象中。在“放置”时,可拖动对象嵌套在可放置对象中。在“出”时(即将可拖动对象拖到可放置对象之外),可拖动对象变为非嵌套 - 即嵌套到主体。
ISSUE: 可拖动对象的嵌套和取消嵌套导致可拖动对象的位置捕捉到新位置。这是因为可拖动的 css 包含了与前一个父级的相对位置,并且在嵌套到新父级的过程中,这个相对 css 被假定为相对于新父级。
示例和问题: http: //jsfiddle.net/sandeepy02/CNtRX/2/上的示例 您可以通过以下方式复制问题
创建对象“房间”和“桌子”。
移动“房间”。
将“表”放入“房间”。
表格被重新定位到远离鼠标光标的位置。发生这种情况的原因是因为“表”的 css 包含表相对于主边界容器的位置。当我将“桌子”放入“房间”并将其嵌套时,然后相对于“房间”应用相同的相对位置,从而导致“桌子”位置的突然变化。
事实上,当我拖出“table”时,该位置再次捕捉到不同的位置,因为“table”css 现在包含与“room”的相对位置,并且将“table”附加到“boundaryContainer”会导致“room”的相对位置被假定为“boundaryContainer”的相对位置。
任何帮助将不胜感激。