1

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").

私は何を間違っていますか?ありがとうございました。

4

0 に答える 0