1

我有一个可拖动的元素列表。我使用的唯一 jQuery 是:

$('.section_rows').sortable();

这工作正常。但是,当我在页面底部(在底部一直垂直滚动)并单击一行进行拖动和排序时,页面“跳转”了55px. 虽然这在功能上没什么大不了的,但它是一个糟糕的用户体验(并且可拖动的行位于此页面的底部,所以这种打嗝总是会发生)。

我看了一下 HTML,看起来 jQuery 正在添加一个名为的类'.ui-sortable-helper',其中包含一个高度为 55px 的样式。

是否有一种方法可以禁用此功能或迫使该页面在选择可拖动物品时“不移动”?

4

2 回答 2

1

听起来您需要一个放置占位符来将列表保持在相同的高度。尝试:

$(".section_rows").sortable(P{
   placeholder: 'ui-state-highlight'
});

确保将 CSS.ui-state-highlight设置为适当的高度。

于 2013-01-22T01:00:15.303 回答
0

手动将占位符添加到sortable函数 ( http://jqueryui.com/sortable/#placeholder ),并设置如下样式:

$('.section_rows').sortable({placeholder: "ui-state-highlight"});

.ui-state-highlight {
    height: 55px;
    line-height: 1.2em;
    background: rgb(250, 252, 255)!important;
    border: none!important;
}
于 2013-01-22T00:53:03.413 回答