Jquery可排序的’change’事件元素位置

前端之家收集整理的这篇文章主要介绍了Jquery可排序的’change’事件元素位置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有办法获得助手被拖到新位置的当前位置吗?
$("#sortable").sortable({
        start: function (event,ui) {
            var currPos1 = ui.item.index();
        },change:  function (event,ui) {
            var currPos2 = ui.item.index();
        }
});

看来,当实际改变发生时,currPos1和currPos2具有相同的值!

我需要实现的是突出显示用户“开始拖动元素”到“当前替换的元素”之间的所有位置。一旦用户释放鼠标按钮更新发生,只有当我得到新的位置,但我需要它之前鼠标释放。

解决方法

UPDATED:26/08/2016使用最新的jquery和jquery ui版本加bootstrap风格。
  • demo: 07000
$(function() {
    $('#sortable').sortable({
        start: function(event,ui) {
            var start_pos = ui.item.index();
            ui.item.data('start_pos',start_pos);
        },change: function(event,ui) {
            var start_pos = ui.item.data('start_pos');
            var index = ui.placeholder.index();
            if (start_pos < index) {
                $('#sortable li:nth-child(' + index + ')').addClass('highlights');
            } else {
                $('#sortable li:eq(' + (index + 1) + ')').addClass('highlights');
            }
        },update: function(event,ui) {
            $('#sortable li').removeClass('highlights');
        }
    });
});

猜你在找的jQuery相关文章