Staticblock というカスタム ウィジェットを作成しようとしています。Resizable ウィジェットをプロトタイプとして使用したいと考えています。ウィジェットは継承できると思いました。サブウィジェットに変更が加えられていない場合 (メソッドの追加やオーバーライドがない場合)、継承されたウィジェット (サイズ変更可能) のように動作します。
$.widget( "my.staticblock", $.ui.resizable, {
/*
methods go here
*/
});
さて、「静的ブロック」を「サイズ変更可能」であるかのように使用できないでしょうか。そのようです...
$( "#resizable1").staticblock();
それは機能しますが、オプションを渡すとエラーが発生します。そのようです..
$( "#resizable1").staticblock({
containment: "parent"
});
包含: 「親」は、サイズ変更可能なウィジェットの有効なオプションです。以下は正常に動作します..
$( "#resizable1").resizable({
containment: "parent"
});
私が受け取るエラーは、jQuery UI のこのコードのチャンクに関連しています。
$.ui.plugin.add("resizable", "containment", {
start: function() {
var element, p, co, ch, cw, width, height,
that = $(this).data("ui-resizable"),
o = that.options,
el = that.element,
oc = o.containment,
ce = (oc instanceof $) ? oc.get(0) : (/parent/.test(oc)) ?
el.parent().get(0) : oc;
if (!ce) {
return;
} ...
それを理解しようとする私の謙虚な試みで、
静的ブロックウィジェットを使用する場合、「それ」は行の実行時に未定義であると判断できました
that = $(this).data("ui-resizable").
私は何を間違っていますか?ありがとうございました。