关于jQuery和Bind的问题

时间:2011-09-02 22:56:04

标签: jquery jquery-ui

我正在尝试组合bind和dragable

$(".qq-upload-success").draggable({//functions});

有一个解决方案吗?

我用ajax加载这个类。所以这个函数不起作用,所以我必须将this()或live()这个动作绑定到这个类。

$(".qq-upload-success").bind("draggable", function()    {
        $.draggable({
        helper:'clone',
        start: function(event, ui) {
            var txta = $("textarea#kapiteltext");
            $("div#pseudodroppable").css({
                position:"absolute",
                top:txta.position().top,
                left:txta.position().left,
                width:txta.width(),
                height:txta.height()
            }).droppable(options).show();
        },
        stop: function(event, ui) {
            $("div#pseudodroppable").droppable('destroy').hide();
        }
        });
    });  

$(".qq-upload-success").bind("drag", draggable({
        helper:'clone',
        start: function(event, ui) {
            var txta = $("textarea#kapiteltext");
            $("div#pseudodroppable").css({
                position:"absolute",
                top:txta.position().top,
                left:txta.position().left,
                width:txta.width(),
                height:txta.height()
            }).droppable(options).show();
        },
        stop: function(event, ui) {
            $("div#pseudodroppable").droppable('destroy').hide();
        }
    }));
谢谢你!

1 个答案:

答案 0 :(得分:2)

无法为将来创建的所有元素添加非事件内容(例如可拖动)。

您需要在元素存在时创建它,例如每当添加这样的元素时使用$('.foo:not(.ui-draggable)').draggable(...)