jQuery UI不接受新元素的可放置行为

时间:2013-09-30 12:17:36

标签: javascript jquery jquery-ui

我在<ul>中添加了添加元素的简单脚本,这些元素是可排序的。当我添加新元素<li>时,元素是可排序的,我可以将其拖放到其他位置,但我不能将其他元素放在新创建元素的位置上。我希望你能理解我。我尝试应用与手动添加的元素相同的设置,但它不起作用:

$(document).ready(function(){
    $("ul").sortable({
        containment : 'document', 
        tolerance: 'pointer', 
        cursor: 'pointer', 
        revert: 'true', 
        opacity : 0.6, 
        connectWith : "ul", 
        placeholder: 'border', 
        items : 'li:not(.naslov)'
    }).disableSelection();

    $("li").ellipsis();

    $("#addGroup").click(function(){
        $(".kolone").append(
            '<ul class="prvi"><li class="naslov">Naslov1</li><li></li></ul>'
        ).sortable({
            containment : 'document', 
            tolerance: 'pointer', 
            cursor: 'pointer', 
            revert: 'true', 
            opacity : 0.6, 
            connectWith : "ul", 
            placeholder: 'border', 
            items : 'li:not(.naslov)'
        }).disableSelection();
    });
});

1 个答案:

答案 0 :(得分:0)

我修改了第一行中的选择器,从'ul'到'kolone'

$(".kolone").sortable({
    containment: 'document',
    tolerance: 'pointer',
    cursor: 'pointer',
    revert: 'true',
    opacity: 0.6,
    connectWith: "ul",
    placeholder: 'border',
    items: 'li:not(.naslov)'
}).disableSelection();

$("li").ellipsis();

$("#addGroup").click(function () {
    $(".kolone").append('<ul class="prvi"><li class="naslov">Naslov1</li><li></li></ul>').sortable({
        containment: 'document',
        tolerance: 'pointer',
        cursor: 'pointer',
        revert: 'true',
        opacity: 0.6,
        connectWith: "ul",
        placeholder: 'border',
        items: 'li:not(.naslov)'
    }).disableSelection();
});

kolone代表专栏。