我有一个可排序的扑克牌列表。为了只显示卡片的顶部,我为每张卡片设置了一个负的底部边距。一旦我这样做了,jQuery sortable 就会变得非常不稳定并且难以使用。我怎样才能消除这个过滤器? 在闪烁之上,如何获得正确的垂直对齐以进行拖动?似乎我必须在列表的上方或下方移动,才能将占位符移动到列表的两侧。
我已将我的代码放在http://jsfiddle.net/otac0n/wDTwX/以便您可以感受一下,但这里是它的要点:
// HTML
<div class="deck" data-bind="sortable: { data: Cards, options: { placeholder: 'card', cursorAt: { left: 5, top: 5 }, tolerance: 'pointer' } }">
<div class="card" data-bind="text: Name, style: { background: Color }"></div>
</div>
// CSS
.deck
{
margin: 10px;
padding: 0 0 130px 0;
}
.card
{
width: 100px;
height: 150px;
border: 1px solid black;
border-radius: 8px;
background: White;
color: White;
margin: 0 0 -130px 0;
padding: 5px;
}
// JS
var vm = {
Cards: ko.observableArray([
{ Name: "Red", Color: "#f00" },
{ Name: "Green", Color: "#0f0" },
{ Name: "Blue", Color: "#00f" },
])
};
ko.applyBindings(vm);