我在我的 webapp 中使用自定义滚动条,但我有以下问题:
http://jsfiddle.net/PVZB8/3056
正如您所看到的,当您将项目拖出列表时,它是不可见的。我需要让它可见并成为原始项目,因为我有动画触发器绑定到它。
如果您检查此内容,您可以了解更多我正在尝试做的事情: jQuery sortable with overflow: hidden; 在两个列表之间
我在我的 webapp 中使用自定义滚动条,但我有以下问题:
http://jsfiddle.net/PVZB8/3056
正如您所看到的,当您将项目拖出列表时,它是不可见的。我需要让它可见并成为原始项目,因为我有动画触发器绑定到它。
如果您检查此内容,您可以了解更多我正在尝试做的事情: jQuery sortable with overflow: hidden; 在两个列表之间
http://jsfiddle.net/PVZB8/3089/
这与上一个解决方案几乎相同,因此我将尝试对其进行分解并为您解释一下:
appendTo 选项设置为“BODY”,因此它不在列表维度的范围内,并且在将其拖到列表之外时隐藏。
因为可拖动对象在被拖动时附加到主体,所以它不再是您的UL
样式的一部分。这就是为什么我将额外的类添加到LI
s
我知道这张票有点过时了,但是我在使用自定义滚动条解决方案并尝试在隐藏溢出的情况下在 Sortable 之间拖动时遇到了同样的问题。在添加代码以修复 Sortable 以使用我的 Scrollpane 后,我注意到 appendTo 功能似乎有遗漏。
appendTo的代码仅在 DOM 中不存在帮助器时将其附加到目标。这就是为什么克隆选项适用于某些人(但不适用于所有人,我不会在这里讨论)。修复它的关键是将此代码添加到小部件的_mouseStart函数的末尾:
if (!this.helper.parent().is(this.appendTo)) {
this.helper.detach().appendTo(this.appendTo);
// update position
this.offset.parent = this._getParentOffset();
}
注意this.appendTo是在函数的前面设置的:
this.appendTo = $( o.appendTo !== "parent" ?
o.appendTo :
this.currentItem.parent() );
完整的修复,包括其他流修复,可在此处提供的 jQuery-UI-ScrollPane 的可滚动排序 JS 文件中找到: https ://github.com/borgboyone/jQuery-UI-ScrollPane 。(注意:这个修复已经通过 pull-request 提供给 jQuery-UI 项目。)
干杯!