Joh*_*zen 2 jquery jquery-ui jquery-ui-sortable knockout.js knockout-sortable
我有一张可分类的扑克牌清单.为了显示牌的顶部,我给每张牌一个负底线.一旦我这样做,jQuery可排序变得非常复杂并且难以使用.我怎样才能消除这个傻瓜呢? 在闪烁的顶部,我如何获得适当的垂直对齐拖动?看来我必须在列表的上方或下方行,以使其将占位符移动到列表的那些边.
我把我的代码放在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);
Run Code Online (Sandbox Code Playgroud)
我也在挣扎着一个闪烁的可分类.注意到它只在2个条件下闪烁:
connectWith选项被使用<ul>标签)有一个高度或其他任何东西,比如<div style="clear:both">强迫它有一个高度.另一方面,如果连接的UL没有高度,我们实际上不能丢弃其中的任何东西.但是只要UL达到高度,它就会闪烁.所以我把高度只有10px而且效果很好.如果这不起作用,请尝试使用overflow:visible或overflow:隐藏在UL的父级上.希望能帮助到你.
更新:
如果有多行项目,它将无法工作.我可以通过这样做来解决这个问题:
over:function(event,ui){$('#my_sortable_list').css('overflow','visible'); }
然后
stop:function(){$('.selector_for_all_sortable_lists').css('overflow','hidden'); }
在两个连接列表上
| 归档时间: |
|
| 查看次数: |
3528 次 |
| 最近记录: |