2 回答
TA贡献1719条经验 获得超6个赞
如前所述,您必须将它们包含在自己的容器中。这是一个例子。
$(function() {
$("#myItemsContainer .list:eq(0)").sortable({
items: "> .sortType1"
});
$("#myItemsContainer .list:eq(1)").sortable({
items: "> .sortType2"
});
});
#myItemsContainer {
list-style-type: none;
margin: 0;
padding: 3px;
width: 60%;
border: 1px solid #000;
}
#myItemsContainer div[class^='sortType'] {
margin: 0 3px 3px 3px;
padding: 0.4em;
padding-left: 1.5em;
font-size: 1.4em;
height: 18px;
border: 1px solid #CCC;
}
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<div id="myItemsContainer">
<div class="list">
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
</div>
<div class="list">
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
</div>
</div>
TA贡献1815条经验 获得超10个赞
您可以通过更新小部件items的选项来实现这种行为sortable。并且,您可以在鼠标悬停在项目上时更新它:
<div id="myItemsContainer">
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
</div>
$(function() {
var elm = $('#myItemsContainer'); // cache for performance
elm.sortable({
items: '> .sortType1' // start with default selector
}).on('mouseover', 'div', function(e) {
if ($(e.currentTarget).hasClass('sortType1')) {
// limit items to sortType1
elm.sortable('option', 'items', '> .sortType1');
} else {
// limit items to sortType2
elm.sortable('option', 'items', '> .sortType2');
}
});
});
- 2 回答
- 0 关注
- 95 浏览
添加回答
举报