【发布时间】:2015-09-30 03:27:04
【问题描述】:
我正在尝试做一个嵌套的可排序,我有点成功,但有一个小小的不便让我很烦恼。
我希望占位符仅在我放下当前拖动的项目(在 mouseup 上)后才消失,但我不知道该怎么做。
我想这样做是因为当我向下排序时,占位符的删除会影响父级的高度,这反过来会产生一个小错误,请在此处查看JSFiddle。
HTML
<div class="container">
<h1>Menu</h1>
<ul class="list-group striped nest">
<li class="list-group-item">Home <ul class="list-group striped nest"></ul></li>
<li class="list-group-item">About <ul class="list-group striped nest"></ul></li>
<li class="list-group-item">
Services
<ul class="list-group striped nest">
<li class="list-group-item">Design <ul class="list-group striped nest"></ul></li>
<li class="list-group-item">Programming<ul class="list-group striped nest"></ul></li>
</ul>
</li>
<li class="list-group-item">Contact <ul class="list-group striped nest"></ul></li>
<li class="list-group-item">
<button class="btn btn-sm btn-default" data-toggle="collapse" data-target="#collapseExample">
<span class="glyphicon glyphicon-chevron-down" aria-hidden="true"></span>
</button>
Empty nestable
<ul id="collapseExample" class="collapse list-group striped nest" aria-expanded="false"></ul>
</li>
</ul>
</div>
CSS
ul.nest {
min-height: 42px;
margin: 0;
}
ul.nest:empty {
border: 1px dashed #ddd;
border-radius: 3px;
}
ul.nest li:hover {
cursor: pointer;
}
ul.nest:first-child {
margin-top: 5px;
}
.bg-info {
min-height: 42px;
list-style: none;
}
.striped li:nth-child(even) {
background-color: #f9f9f9;
}
脚本
$(function() {
$('.nest').sortable({
connectWith: ".nest",
items: "> li",
axis: "y",
cursor: "row-resize",
opacity: 0.5,
placeholder: "bg-info"
}).disableSelection();
});
【问题讨论】:
-
您能否更详细地解释一下您所指的又会产生一个小错误吗?