如何选择动态div到可拖动的停止功能?

时间:2014-04-15 07:22:45

标签: javascript jquery draggable

这是我的代码:

    $(document).ready(function () {
        var $div = $('<div>my test</div>').draggable().appendTo('body');
        $div.attr('id', 'Test');
    });

    //$('div#Test'.draggable({
    $('div').draggable({
        stop: function (event, ui) {
            var draggableId = $(this).attr("id");
            alert(draggableId);
        }
    });

在拖动动态div时,我预计stop函数会显示警告。但它不起作用。我做错了什么?

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

当您创建div元素时,您可以在其上调用draggable,但不进行任何设置。试试这个:

var draggableSettings = {
    stop: function (event, ui) {
        var draggableId = $(this).attr("id");
        alert(draggableId);
    }
}

$(document).ready(function () {
    $('div').draggable(draggableSettings); // any pre-existing divs

    // the dynamically created div
    var $div = $('<div>my test</div>', { 'id': 'Test').draggable(draggableSettings).appendTo('body');
});

另请注意,对加载时draggable的调用需要放在文档就绪处理程序中。