次の方法で、いくつかの一般的なアプリケーション固有のアクションをjQuery プラグインに移動しようとしています。
$.fn.extpoint = function() {...}
しかし、いくつかの拡張ポイントを宣言したくありません。
$.fn.extpoint1 = function() {...}
$.fn.extpoint2 = function() {...}
...
代わりに、次のような構文シュガーを使用したいと思います。
$("#id").extpoint.func1().extpoint.func2()
定義付き:
$.fn.extpoint = {}
$.fn.extpoint.func1 = function() {
this.val();
this.data("ip");
...
return this;
}
そして呼び出します:
$("#id").extpoint.func1(...)
this
評価時に、元の jQuery オブジェクトの代わりに ( 、、... 要素$.fn.extpoint
を持つ辞書) を指します。func1
func2
func1
jQuery プラグインを拡張可能にすることはできますか?
PS。関数名を最初の引数として渡し、拡張ポイントへの呼び出しを$.fn.extpoint
実装することができます (名前と実装の間の関連付けを内部辞書に保存します)。$.fn.extpoint('extend', func)
その場合、ユースケースは次のようになります。
$("#id").extpoint('func1', ...).extpoint('func2', ...)
しかし、私はより多くの構文糖衣を作る方法を探しています...