是否可以控制jQuery UI可排序助手的溢出?

时间:2010-12-29 16:31:39

标签: jquery css jquery-ui jquery-ui-sortable

我的标记看起来大致如下:

<div class='root'>
    <div class='wrapper'>
        <div class='column'>
            ...
        </div>
        ...
    </div>
</div>

根div有overflow: auto,宽度/高度可能会改变。列具有固定的宽度并向左浮动。包装器具有对应于列宽的总和的固定宽度。最终结果是视图中的一组水平布局列,当列高度或总列宽超过其边界时显示滚动条。

我已经将一个jQuery UI应用于包装器div,因此可以对里面的列进行排序。这很有效,除了一个问题:sortable给元素排序position: absolute,这显然将它从正常布局中删除。因此,如果列非常高,整个页面将获得一个滚动条,直到元素被放回原位。

即使在排序时,有没有办法让可排序助手仍然包含在滚动div中?

1 个答案:

答案 0 :(得分:1)

我认为这可能适合你。

您可以选择使用以下内容附加可排序助手的位置:

$( ".selector" ).sortable({ appendTo: 'div.wrapper' });

来自文档:

“appendTo:定义在拖动过程中附加鼠标移动的辅助对象的位置(例如,解决重叠/ zIndex问题)。”