0

YUI2 イベント リスナーをオフにしようとすると問題が発生します。リスナーを確立するために次のことを行っていますが、うまく機能しますが、cancelButton の呼び出しは false を返し、失敗します。ダイアログが開くたびに、キャンセル ボタン リスナーが設定されますが、以前のリスナーが正常に削除されなかったため、キャンセル関数が何度も呼び出されます。

どうすればこれを防ぐことができますか?

var cancelButton = new YAHOO.util.Element( "buttonid" );
var handleCancelClick = function(e) 
{
    cancelButton.removeListener(handleCancelClick);         
    someotherstuff();
};
cancelButton.on('click', handleCancelClick, null, this);
4

2 に答える 2

1

イベントのタイプを removeListener に渡す必要があります。

cancelButton.removeListener("click", handleCancelClick);

http://developer.yahoo.com/yui/event/#removeeventまたはhttp://developer.yahoo.com/yui/docs/YAHOO.util.Element.html#method_removeListenerを参照してください。

于 2012-08-30T15:21:44.307 に答える
1

cancelButton.removeListener('click', handleCancelClick) を呼び出す必要があります。API ドキュメントによると、最初の引数はイベント タイプです。

http://developer.yahoo.com/yui/docs/YAHOO.util.Element.html#method_removeListener

于 2012-08-30T15:25:21.927 に答える