w2ui.utils - にほんご。

common.off

更新日: 2018-09-07

イベントハンドラを削除します。指定方法は以下の2種類です。 戻り値はundefinedです。

off(type, [handler])

type: string
イベント名。
handler: function
JavaScript関数。オプションです。

off(eventData, [handler])

eventData: object
イベントのパラメータ。
handler: function
JavaScript関数。

説明

特定イベントの特定リスナ、特定イベントの全てのリスナ、全てのイベントの全てのリスナを削除することができます。 例えば、以下のように指定したLayoutがあるとします。(Grid、Toolbar等で使う場合も全く同じです)

$('#layout').w2layout({
    name    : 'layout',
    panels  : [
        { type: 'top', size: 40 },
        { type: 'main', content: 'This is main panel' },
        { type: 'preview', size: 200 }
    ]
});

特定のイベントリスナを削除するには以下のように指定します。 (ハンドラを無名関数にすることはできません。)

w2ui['layout'].off('refresh', handler);

特定イベントの全てのリスナを削除する場合は、

w2ui['layout'].off('refresh');

全イベントの全リスナを削除する場合は、

w2ui['layout'].off('*');

イベントの名前空間

イベントリスナを設定する際に、イベントに名前空間を指定することができます。

w2ui['layout'].on('render.myplugin', function (event) {
    console.log(event.target, event);
});
w2ui['layout'].on('refresh.myplugin', function (event) {
    console.log(event.target, event);
});

名前空間を使うことで、イベントリスナに登録した全てのイベントを指定することなく、簡単に削除することができます。

w2ui['layout'].off('.myplugin')   // 上記のrender.mypluginとrefresh.mypluginを削除します


© 2017. .
Code licensed under theMIT License. Documentation licensed underCC BY 3.0.

このコンテンツはvitmalinaによるw2ui.utilsドキュメントを翻訳/改変したものです。