我希望有一个包含在其父级中的可拖动,然后我想进一步限制它以保持在父级中的某个矩形内:
item.draggable({containment:"parent",axis:"x",handle:item.children()});
item.draggable('option','containment')
"parent"
item.draggable('option','containment',[0,0,250,0]);
item.draggable('option','containment')
[0,0,250,0]
我希望它同时是“父”和[0,0,250,0],但问题是,只要我设置了包含选项,它就会忘记我用它创建的父包含。当它忘记父项时,矩形是相对于文档计算的,而父项通常不在x = 0处。
编辑:好的,所以我解决了这个问题,但我还是想要一些输入,因为这真的很奇怪。当我初始化draggable时,containment选项被设置为字符串“parent”,那么如果我将它设置为其他东西它将是其他东西,它将忘记父级。但是,如果我先拖动draggable然后将其设置为其他东西,则item.draggable('option','containment')将输出一个dom元素,因此显然“父”被处理成其他内容。然后,如果我在第一次拖动项目之后将包含选项设置为其他内容,即使包含设置为矩形,它也将保持包含在父项中,这解决了我的问题。现在我想知道这是一个错误还是一个设计问题,不应该更好地记录这种行为吗?有谁在那里? #slowtuesday