さまざまなページに Javascript を介して埋め込まれた一連のアプリがあるため、親ページで誤って何かを選択しないようにセレクターを作成する際には、できる限り注意することが重要です。(親マークアップを制御することはできず、iframe はオプションではありません。)
親ページはすべて.noConflict()
モードで jQuery を使用し、私のアプリは常にdiv
クラス内に存在しますmy_app_class
(function($) {
var el = $(".my_app_class"); //my code
}(window.jQuery));
jQ セレクターの前に「my_app_class」を追加することを常に覚えているのはかなり良いことですが、$
. 本質的に、私は欲しい:
$(".headline")
常に等しくするには:
$(el).find(".headline")
これを行う単純な方法は次のようになります。
$ = function(selector) {
return jQuery(el).find(selector);
}
しかし、親ページで実際に選択を行う必要がある場合 (時々発生します) に備えて、スーパー機能を維持したいと考えています。また、jQuery の他の使用法を上書きしたくありません$.ajax
。
関数に別名を付けてオリジナルを維持するのが最善でしたか? 私はこのようなものが欲しい
(new $) = selection inside `.my_app_class`
($$) = (old $)
ありがとう!