jQuery,sortable:修改" clickAt"

时间:2013-01-21 09:04:09

标签: jquery html drag-and-drop

我有以下可拖动的列表项结构:

<ul id="dadCol_0" class="dad-list ui-sortable">
<li class="dad-item ui-draggable" id="sl1" style="position: relative;">1</li>
<li class="dad-item ui-draggable" id="sl2" style="position: relative;">2</li>
<li class="dad-item ui-draggable" id="sl3" style="position: relative;">3</li>
<li class="dad-item ui-draggable" id="sl4" style="position: relative;">4</li>
<li class="dad-item ui-draggable" id="sl5" style="position: relative;">5</li>
</ul>

现在,当您在矩形内部单击以开始拖动时无关紧要 - 但我希望它是此矩形的中心(宽度/ 2,高度/ 2)。我有点需要使用clickAt属性,但这是我迄今为止所做的一个小例子:

$('.dad-item').each(function() {
    $(this).draggable({
        opacity: 0.6, 
    });
});

这是不透明度,但拖动现在已经破坏:项目不会改变顺序,也不会恢复触发等。

编辑:第二次尝试:

dad_list.sortable({
    connectWith: 'ul.dad-list',
    containment: '#containment',
    items: 'li.dad-item',
    cursorAt: {
        top: $(this).height()
    },
    stop: function(event, ui) {
        serializedads();
    }       
});

现在我无法向上移动,只能水平移动

1 个答案:

答案 0 :(得分:0)

我认为你需要这样的东西

$('.dad-item').draggable({
    opacity: 0.6,
    cursorAt: {
        left: width / 2,
        top: height / 2
    }
});