我在另一个 div 'box' 父容器中有一个 div 'slide' 元素,并已将 JQuery Draggable 应用于子容器。在拖动项目时,我正在调整父容器的大小,有时会缩小,有时会放大它。
问题是 JQuery 不响应这种调整大小,并且仍然在父级的原始尺寸内包含拖动的元素,而不是在其当前尺寸内,直到 mouseup - 下一个拖动会话将使用新尺寸(直到它再次更改)。
为了尝试解决这个问题,我希望触发 mouseup 事件,然后触发 mousedown 事件,以便 JQuery 使用新的容器大小:
$('.slide').draggable({ axis: "x", containment: 'parent',
drag: function (e, ui) {
resizeContainer();
if (outsideContainer()){
// Try to stop and restart dragging
$(this).trigger('mouseup');
$(this).trigger('mousedown');
}
}
但是,这会引发异常...
Unable to get value of the property '0': object is null or undefined
...在这行 JQuery 代码中:
this.helper[0].style.left=this.position.left+"px";
任何人都知道我怎么能a)让 Draggable 实时响应父尺寸的变化或b)触发一个dragstop,然后无缝地拖动?
谢谢。