次のような jquery プラグインを使用しています。
(function($){
var options;
$.fn.main(opts){
options = opts;
//rest of code
}
$.fn.otherFunc(){
//does something with options
}
}(jQuery));
ここでの問題は、このプラグインをページで 5 回使用すると、オプション変数が上書きされ、5 つのインスタンスすべてがそれらのオプションを共有することです。これは悪いことです。各プラグイン インスタンスに独自の構成を持たせたいのです。
これを達成するための非ハックなjQueryの方法はありますか?
編集:
$.fn.main の $(this) への追加オプションは、main 関数から $(this) で $.fn.otherFunc が呼び出されない可能性があるため、expando としてややハックなものと見なすことを追加する必要があります。私のものにアクセスできます!