Knockout-Sortable水平列表在拖动项目时垂直推送项目

时间:2012-11-09 22:13:30

标签: javascript knockout.js knockout-sortable

我正在使用knockout -js创建一个应用程序,使用knockout-sortable进行拖放可排序列表。有一个垂直列表,每个项目内部都是一个水平列表。垂直列表表现得很好,但每当我尝试在水平列表中拖动项目时,它会相对于被拖动的项目向上或向下推动该列表中的其余项目。水平列表定义如下:

<div style="float: left" data-bind="sortable: { template: 'levelTmpl', data: $data.levels, beforeMove: $root.verifyMove, afterAdd: showLevel, beforeRemove: hideLevel, options: { containment: 'parent' } }"></div>
<script id="levelTmpl" type="text/html">
    <div class="container item" style="display: inline-block">
    <div style="float: right"><span class="ui-button" data-bind="click: $parent.removeLevel">[x]</span></div>
    <input data-bind="value: name"/><br/>
    <div style="clear: both"></div>
    <textarea cols="35" rows="4" data-bind="value: description"> </textarea><br/>
    <textarea cols="35" rows="4" data-bind="value: canned"> </textarea>
    </div>
</script>

您可以在此处查看完整的申请:
链接不再存在

我已经尝试了我找到的所有建议,包括那些http://bugs.jqueryui.com/ticket/6702的建议,到目前为止,没有任何效果。我真的希望得到横向可排序列表,所以如果有人有任何建议我会非常感激。

1 个答案:

答案 0 :(得分:0)

仅供您参考https://github.com/rniemeyer/knockout-sortable只是jquery ui可排序的包装器。

为了避免混淆列表,请在可排序元素上使用非接触式。