ui.helper stop() 函数中的索引

ui.helper index in stop() function

在下面的例子中尝试获取索引简直是疯了。我正在使用这个基本代码:

http://jqueryui.com/draggable/#sortable

stop() 事件中,我想知道拖动的新元素的索引是什么。例如:

[Drag me down]
-------------
[Item 1]
[Item 2]
[Item 3]
[Item 4]

如果我在 Item 2Item 3 之间发布新项目,我需要获得一个 2。如下所示,ui.helper.index() 无效,因为它返回原始元素的索引([Drag me down] 元素):

$( ".sortable" ).sortable({
        // ...
        receive: function( event, ui ) {
            var indexAtReceive = $(this).data("ui-sortable").currentItem.index();
        }
    });

    $( ".draggable" ).draggable({
        // ...
        stop: function( event, ui ) {
            // Here indexAtStop is the index of the original element, 
            //but not the new dragged element
            var indexAtStop = ui.helper.index();
        }
    });

如果您需要更多相关代码或测试,请告诉我。提前谢谢你。

在这种情况下,您需要 ui.item.index() 在停止函数中

$( ".draggable" ).sortable({
    // ...
    stop: function( event, ui ) {
        var indexAtStop = ui.item.index();
    }
});