Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将jQueryUI可调整大小的小部件应用于动态创建的元素 这个问题与事件授权无关_Jquery_Jquery Ui_Jquery Ui Resizable - Fatal编程技术网

将jQueryUI可调整大小的小部件应用于动态创建的元素 这个问题与事件授权无关

将jQueryUI可调整大小的小部件应用于动态创建的元素 这个问题与事件授权无关,jquery,jquery-ui,jquery-ui-resizable,Jquery,Jquery Ui,Jquery Ui Resizable,我想将jQuery可调整大小的小部件应用于一系列可能动态创建的div标记 是否有一种方法可以使用类似事件委托的行为来动态地将jQuery可调整大小的小部件添加到新元素中 以下是示例(请注意,新创建的绿色元素无法调整大小): $(函数(){ var cols=$(“#cols”).子项(“.col”); 可调整大小的({ 最大高度:20, 身高:20, 距离:5,, 句柄:'e', 开始:函数(){ log(“我已经开始了!”); }, 停止:函数(){ log(“我停下来了!”); } });

我想将jQuery可调整大小的小部件应用于一系列可能动态创建的
div
标记

是否有一种方法可以使用类似事件委托的行为来动态地将jQuery
可调整大小的
小部件添加到新元素中

以下是示例(请注意,新创建的绿色元素无法调整大小):

$(函数(){
var cols=$(“#cols”).子项(“.col”);
可调整大小的({
最大高度:20,
身高:20,
距离:5,,
句柄:'e',
开始:函数(){
log(“我已经开始了!”);
},
停止:函数(){
log(“我停下来了!”);
}
});
$(#addNew”)。在(“单击”,函数()上{
cols.filter(“”+parseInt(cols.length+1)+“”)之后的(“”+last”);
cols=$(“#cols”)。儿童(“.col”);
});
});
.col{
浮动:左;
宽度:20px;
高度:20px;
背景:#f00;
右边距:1px;
}
新上校{
背景:#0f0;
}
钮扣{
清除:左;
显示:块;
边缘顶部:10px;
}

1.
2.
3.
4.

添加
您需要重新初始化
col.resizeable()添加新元素后。
请检查以下工作代码:

$(函数(){
var cols=$(“.col”);
可调整大小的({
最大高度:20,
身高:20,
距离:5,,
句柄:'e',
开始:函数(){
log(“我已经开始了!”);
},
停止:函数(){
log(“我停下来了!”);
}
});
$(#addNew”)。在(“单击”,函数()上{
cols.filter(“”+parseInt(cols.length+1)+“”)之后的(“”+last”);
cols=$(“.col”);
cols.可调整大小({maxHeight:20,
身高:20,
距离:5,,
句柄:'e'});
});
});
.col{
浮动:左;
宽度:20px;
高度:20px;
背景:#f00;
右边距:1px;
}
新上校{
背景:#0f0;
}
钮扣{
清除:左;
显示:块;
边缘顶部:10px;
}

1.
2.
3.
4.

添加
试试这个代码它对我有用

$("#cols").on('mouseenter',cols,function(){
    cols.resizable({
    maxHeight: 20,
    minHeight: 20,
    distance: 5,
    handles: 'e',
    start: function() {
       console.log("I've started!");
    },
    stop: function() {
       console.log("I've stopped!");
    }

    });

});

我知道这是一篇老文章,但我仍然觉得我可以发布一个更好的答案供将来参考,因为在你的评论中,你提到了代码重用,并且没有多次将插件应用于元素,这个解决方案应该可以克服这些问题

$(函数(){
applyresizeblelplugintocol($(“.col”);//通过传递插件必须应用到的所有元素来校准函数
$(#addNew”)。在(“单击”,函数()上{
$(“.col:last”)。在(''+parseInt($(.col”).length+1)+''之后;
applyresizeblelplugintocol($(“.col:last”);//获取最后一个元素,即刚才创建的元素
});
函数applyresizeblugingintocol(元素){//可重用函数
元素。可调整大小({
最大高度:20,
身高:20,
距离:5,,
句柄:'e',
开始:函数(){
log(“我已经开始了!”);
},
停止:函数(){
log(“我停下来了!”);
}
});
}  
});
.col{
浮动:左;
宽度:20px;
高度:20px;
背景:#f00;
右边距:1px;
}
新上校{
背景:#0f0;
}
钮扣{
清除:左;
显示:块;
边缘顶部:10px;
}

1.
2.
3.
4.

添加
可能重复的可能重复的可能重复的@MelanciaUK的可能重复的可能重复的我看不出它们是如何相同的?我在问你如何才能委托一个不是事件的可调整大小的小部件?谢谢你的回答,由于重复的代码,我试图避免这样做。对于动态创建的元素,你必须重新初始化resizeble()函数,否则它将不起作用。我认为重新初始化resizeble()不会创建重复的实例?