既存の jQuery プラグインを拡張しようとしていますが、以前に説明した問題に遭遇しましたが、残念ながら私のケースとは完全には関係ありません。基本的に、私のコードはこのようなことをします
(function($) {
var self = $.ech.multiselect.prototype,
orig_create = self._create,
orig_init = self._init;
var extensionMethods = {
elemental: null,
tooltip: function(e){
var id = self.elemental.attr("id");
//code
},
_create: function() {
var ret = orig_create.apply(this, arguments);
//code
return ret;
},
_init: function() {
var ret = orig_init.apply(this, arguments);
this.elemental = this.element;
return ret;
},
_bindEvents: function() {
self.tooltip(e);
}
};
$.extend(true, self.options, {tooltip: true});
$.extend(true, self, extensionMethods);
})(jQuery);
私の問題は、「要素」オブジェクト内に this.element への参照を格納しようとしているため、それを使用して tooltip() 内のコントロールの ID を取得できることです。しかし、それはうまくいかず、私はほとんどあきらめました。