提问人:aspirinemaga 提问时间:11/6/2023 更新时间:11/6/2023 访问量:36
使用 SortableJS 禁用其他元素拖动时要推送的项目
Disable items to be pushed while dragging by other elements with SortableJS
问:
我在由项目组成的列表上使用 SortableJs,其中包含固定元素。
我希望固定元素保持在同一个地方。它们不应该被拖来拖去,也不应该被其他元素重新排序/推动。
我不知道该怎么做。实现这一目标的最佳方法是什么?
Sortable.create(document.getElementById('items'), {
group: 'items',
animation: 200,
draggable: '.item',
filter: '.fixed',
dropBubble: true,
onStart: function(e) {},
onEnd: function(e) {},
onMove: function(e) {}
});
<script src="https://cdn.jsdelivr.net/npm/[email protected]/Sortable.min.js"></script>
<ul id="items" class="items">
<li class="item">Item 1</li>
<li class="item">Item 2</li>
<li class="item fixed">Fixed at 3</li>
<li class="item fixed">Fixed at 4</li>
<li class="item">Item 3</li>
<li class="item">Item 4</li>
<li class="item">Item 5</li>
<li class="item">Item 6</li>
<li class="item">Item 7</li>
</ul>
答:
0赞
psdpainter
11/6/2023
#1
看起来你只需要设置:
draggable: '.item:not(.fixed)'
评论
0赞
aspirinemaga
11/6/2023
如果将第 1 个或第 2 个元素拖动到固定元素下方,则固定元素将被推回。无论如何,固定元素都应保持在第 3 位和第 4 位。
评论