これらの2行のコードは、2つの異なる構文を使用して、変更イベントをthis.element
にトリガするだけです。 .trigger()を使用して
:
this.element.trigger('change');
または速記法.change()使用して:あなたは、実際にこのイベントを処理するためにthis.element
によって表される要素にイベントハンドラをバインドでき
that.element.change();
を。
あなたのプラグインを知らないと、正確にはthis.element
であなたに答えることは難しいです。
しかし、オートコンプリートプラグインの例を考えてみましょう。この1つでは、this.element
は、実際にオートコンプリートプラグインが適用される入力フィールドです。おそらく、あなたの質問に行われるように変更イベントがトリガされた場合は、あなたがこのような入力にイベントハンドラをバインドできます。このプラグインはjQuery UI Widget Factoryに依存している場合今
$('#myinput')
.autocomplete()
.bind('change', function() { });
、それを使用することをお勧めしますメソッド_trigger()
は、jquery .trigger()の代わりにイベントをトリガします。
_trigger()を使用すると、プラグインのオプションで定義されたコールバックが正しいコンテキストで実行され、そのイベントがthis.element
(上記と同様)でトリガーされます。だから、可能性があり:
$('#myinput')
.somePlugin({
change: function(e, someData) {
// "this" here will be `this.element´
}
})
.bind('change', function() { ... });