関数を使用し_on()
てマウスイベントをバインドしています。以下のコードを参照してください。
this._on(document,"mouseup",this.ChartMouseUp);
要素を使用しdocument
ていると、エラーがスローされますObject doesn't support this property or method
。this.elementとバインドすると、正常に動作します。
何がうまくいかないのですか?
ベース jQuery UI ウィジェットによって公開される_on()メソッドは、次の引数を取ります。
_on( [ suppressDisabledCheck ] [, element ], handlers )
suppressDisabledCheck
デフォルトはfalse
(ウィジェットが無効になっていない場合にのみハンドラーを呼び出す) であり、element
デフォルトはウィジェットが拡張する要素であるため、次のように記述します。
this._on({ mouseup: this.ChartMouseUp });
解決策を見つけました。以下のコードを参照してください
this._on($(document),"mouseup",this.ChartMouseUp);
ドキュメントを jquery オブジェクトとして渡す必要があります。
ありがとう、
シヴァ
jquery ウィジェット内では、「this」はウィジェット オブジェクトを参照し、this.element はウィジェットが適用された要素を参照します。
_on メソッドは、ウィジェット オブジェクトではなく要素にイベント ハンドラーをアタッチするために使用されます。