限制可以放置 jqueryui 可排序项目的区域
Limiting the area in which a jqueryui sortable item can be dropped
我有 'ul' 个元素,最后 'li' 个元素用于创建新元素。
由于 jqueryui sortable(),ul 是可排序的,我已经从 $('ul').sortable() 中排除了最后一个 'li' 元素,以便该元素不可拖动。但是,列表中的其他项目可以放在最后一个 li 元素下。我想阻止这种情况。有什么方法可以限制物品掉落的位置吗?
简单的概念HTML:
<ul>
<li class="list-element">potato</li>
<li class="list-element">tomato</li>
<li class="list-element">banana</li>
<li class="list-element">pistacchio</li>
<li class="new-element">new product</li>
</ul>
和.js:
$('ul').sortable();
$("ul").disableSelection();
$('ul').sortable({ cancel: '.new-element' });
Fiddle: http://jsfiddle.net/s4yjpoaL/
如您所见,所有项目都可以拖到 .new-element li 下。有没有办法将可拖动性限制在最后一个 li 元素之前?
PS:我知道将最后一个元素放在 ul 之外会更容易,但这不是重点:P
通过将排序的 items
指定为其他 li
项来执行此操作。
http://jsfiddle.net/s4yjpoaL/2/
$('ul').sortable({
items: ".list-element",
cancel: ".new-element",
});
这会禁用最后一个元素的拖放区并使其不可排序。
我有 'ul' 个元素,最后 'li' 个元素用于创建新元素。 由于 jqueryui sortable(),ul 是可排序的,我已经从 $('ul').sortable() 中排除了最后一个 'li' 元素,以便该元素不可拖动。但是,列表中的其他项目可以放在最后一个 li 元素下。我想阻止这种情况。有什么方法可以限制物品掉落的位置吗?
简单的概念HTML:
<ul>
<li class="list-element">potato</li>
<li class="list-element">tomato</li>
<li class="list-element">banana</li>
<li class="list-element">pistacchio</li>
<li class="new-element">new product</li>
</ul>
和.js:
$('ul').sortable();
$("ul").disableSelection();
$('ul').sortable({ cancel: '.new-element' });
Fiddle: http://jsfiddle.net/s4yjpoaL/
如您所见,所有项目都可以拖到 .new-element li 下。有没有办法将可拖动性限制在最后一个 li 元素之前?
PS:我知道将最后一个元素放在 ul 之外会更容易,但这不是重点:P
通过将排序的 items
指定为其他 li
项来执行此操作。
http://jsfiddle.net/s4yjpoaL/2/
$('ul').sortable({
items: ".list-element",
cancel: ".new-element",
});
这会禁用最后一个元素的拖放区并使其不可排序。