Pot.Signal.attachBefore

{Object|Array} Pot.Signal.attachBefore ({Object|Function|String} object, {String|Array} signalName, {Function} callback )

Pot.js と PotLite.js で利用可能。

スロットに存在するハンドラが呼ばれる前に実行されるシグナルを登録します。

attach() で登録したものと同じシグナル signalName で登録した場合、 attach() のハンドラが呼ばれる前に実行されるシグナルを登録します。
同じシグナルが存在しない場合 signal() によって実行しても何も起きません。
DOM エレメントに対して attach() した場合も同様です。

Pot.globalize() が適応されている場合、Pot.attachBefore() が attachBefore() で実行できます。

ユニークな ID を保持する ハンドラオブジェクトが返ります。

// 保存ボタンを押した時のイベントを設定
Pot.attach('#saveData', 'click', function() {
    // 保存する関数
    mySaveData(document.getElementById('inputText').value);
    // ユーザーに保存を伝える関数
    myShowSaveData('Saved!');
});

// これにフォーカス移動するよう後付けする
Pot.attachAfter('#saveData', 'click', function() {
    document.getElementById('inputText').focus();
});

// その前にログを取るよう設定する
Pot.attachBefore('#saveData', 'click', function() {
    MyLogger.log('Save inputText');
});