我有这段 HTML
<div id="workflowEditor" class="workflow-editor">
<div class="node" class="ui-widget" style="top:20px; left:40px;">
<div class="ui-widget ui-widget-header ui-state-default">Header test</div>
<div class="ui-widget ui-widget-content">Test Content</div>
</div>
</div>
有了这个 CSS
.workflow-editor
{
position: relative;
overflow: auto;
}
.workflow-editor .node
{
position: absolute;
min-width: 64px;
min-height: 64px;
}
比打电话
$(".node", "#workflowEditor").draggable({
containment: [0, 0, 500, 500]
});
但是,拖动这个“节点”将允许拖动到负值;似乎draggable
正在使用浏览器的视口坐标来限制边界框。有没有办法告诉坐标是相对于可拖动的父级的?
注意:父母可能会随着时间的推移改变位置。
** 编辑* *
可拖动对象所在的表面相对于其他一些内容。就像 CSS 指定的那样,我需要它是overflow:scroll;
,因此如果将可拖动对象拖到外部,则将显示滚动条。父母的大小是固定的。我遇到的问题是可拖动对象可以拖动到表面的左侧(或顶部)(因此我丢失了它们)。我希望具有与将容器设置为类似的行为"parent"
,但允许可拖动对象溢出到父项的右侧/底部。