jQuery ui-为可选择创建句柄

时间:2014-10-15 17:21:43

标签: jquery-ui jquery-ui-sortable jquery-ui-selectable

我希望将可排序和可选择结合起来,并希望创建类似于可选择的句柄的东西。换句话说,如果我在列表元素中有一个列表和div,我就可以通过单击div来选择列表项。就像可排序的句柄选项一样。

可排序代码:

$("#list3").sortable({
    handle:'.PageTreeListMove',
    connectWith: ".droptrue",
    helper: function (e, li) {
        this.copyHelper = li.clone().insertAfter(li);

        $(this).data('copied', false);
        return li.clone();
    },
    stop: function () {
        var copied = $(this).data('copied');

        if (!copied) {
            this.copyHelper.remove();
        }

        this.copyHelper = null;
    }
});
$("#list4").sortable({
    dropOnEmpty: true,
    receive: function (e, ui) {
        var i=0;
        ui.sender.data('copied', true);
        ui.item.html('<a href="">' + ui.item.text() + '</a><span class="PageTreeListDelete">&nbsp;</span>');
        ui.item.attr('id',ui.item.id);
        ui.item.removeAttr('style');
        ui.item.addClass("added");
        var identicalItemCount  = $("#list4").children('li#'+ui.item.attr('id')).length;
        if (identicalItemCount > 1) {
            $("#list4").children('li#'+ui.item.attr('id')).first().remove();
        }
    }
}).disableSelection();

**可选代码:

$("#list3").selectable({
    selecting: function(e, ui) {
        var curr = $(ui.selecting.tagName, e.target).index(ui.selecting);
        selectedItems.push("<li id="+$(ui.selecting).attr('id')+" class='added'><a href>"+$(ui.selecting).text()+"</a><span class='PageTreeListDelete'>&nbsp;</span></li>");
        if(e.shiftKey&&prev>-1) {
            $(ui.selecting.tagName, e.target).slice(Math.min(prev, curr), 1 + Math.max(prev, curr)).addClass('ui-selected');
        } else {
            prev = curr;
        }
    },
    cancel:'ui-selected'
});

0 个答案:

没有答案
相关问题