0

我有一个使用边框间距来分隔行的表。

当使用 JQuery 可排序时 - 它可以工作 - 移动时行会跳下,这可以修复吗?

此代码演示:

$(function() {
  $("#items").sortable();
  $("#items").disableSelection();
});
table {
  border-spacing: 0 20px;
  background-color: #cda;
}

td {
  width: 170px;
  border: 2px solid gray;
}
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>

<table>
  <tbody id="items">
    <tr>
      <td class="list">1</td>
    </tr>
    <tr>
      <td class="list">2</td>
    </tr>
    <tr>
      <td class="list">3</td>
    </tr>
  </tbody>
</table>

4

1 回答 1

0

我找到了解决方案。我为拖动的元素添加了一个类,

.up{
margin-top: -20px;
}

(似乎与 的值相对应border-spacing

添加是通过像这样进行可排序调用:

$(function () {
$("#items").sortable({
placeholder: "highlight",
start: function (event, ui) {
ui.item.toggleClass("up");
},
stop: function (event, ui) {
ui.item.toggleClass("up");
}
});
$("#items").disableSelection();
});
于 2018-06-29T09:51:36.503 回答