jQuery UI のサイズ変更可能な機能をロード後に追加しようとしている要素のリストがあり、クラスui-resizableを取得していますが、クラスui-resizable-handleを持つ div は追加されていません。
最初に始めます (そして、あなたが尋ねる前に、はい、例では必要のないコードをいくつか剥がしました)...
function setElementsAsResizable(elements, isResizable) {
elements.each(function () {
var element = $(this);
if (element.is(':data(ui-resizable)'))
element.resizable("destroy");
if (isResizable)
element.addClass("resizable");
}
else {
if (element.hasClass("resizable"))
element.removeClass("resizable");
}
});
}
これは、要素のサイズを変更できなくなった場合に備えて、白紙の状態から始めるためです。この後、要素を作成します。
function createResizableElements(row) {
var element = row.children(".element.resizable");
element.resizable({
handles: 'e',
containment: 'parent',
create: function (event, ui) {
$(this).parent().on('resize', function (e) {
e.stopPropagation();
});
},
start: function (event, ui) {...},
resize: function (event, ui) {...},
stop: function (event, ui) {...}
});
したがって、すべての要素にui-resizableが付与されましたが、すべてが div ui-resizable-handleを受け取っていないため、すべてが使用できなくなります。要素も並べ替え可能で (機能します)、ドラッグ アンド ドロップすると同じプロセスを経ますが、現在はui-resizable-handleが与えられています。
つまり、要素を ui-resizable として設定する方法を知っている人はいますが、実際にサイズ変更するために必要なハンドルを取得することはできませんか?