プロトタイプを使用する jQuery プラグインを作成しました。
例:
function MyWidgetConstructor(element) {
this.id = 'test';
this.$element = $(element);
this.$element.data('instance', this);
}
MyWidgetConstructor.prototype.sayHello = function() {
alert('Hello, my ID is: ' + this.id);
}
$.fn.myWidget= function() {
return this.each(function() {
new MyWidgetConstructor(this);
});
};
data 属性を使用して、ウィジェットへの参照を保存します。このようにして、次のようにインスタンス変数を使用してプロトタイプ メソッドを呼び出すことができます。
jQuery('#myInstance').myWidget();
jQuery('#myInstance').data('instance').test();
ただし、それが常に機能しているわけではありません。参照に到達する別の方法はありますか (おそらくデータ属性を使用せずに)?