Prototype と jQuery の両方から $ 関数を統合できる JavaScript 関数はありますか?
はい、これは私が今直面している実際の使用例です。Prototype の $ 関数と jQuery の $ が競合していることがわかります。jQuery.noConflict() を使用して $ を Prototype に戻すことができることはわかっていますが、そうすると、その $ 関数を使用する jquery 固有の javacript コードを書き直すか、コード ブロックに jquery 固有のものを含める必要があります (例:無名関数)。
両方のライブラリで既存のコードを書き直して、それらを 1 つのページにまとめなくても、簡単な方法はありますか?
この質問に答えることができるコードは次のようになります。フィードバックをお待ちしております。
<script type="text/javascript" src="/path/to/prototype.js"></script>
<script type="text/javascript" src="/path/to/jquery.js"></script>
<script type="text/javascript">
/* <![CDATA[ */
var $j = jQuery.noConflict();
var $p = $; // reference to prototype's $
var $ = function(E, F){
var isJQuery = true;
//TODO: logic to determine which $ to use here YOUR SUGGESTION HERE ;-)
var result = null;
if(isJQuery){
result = $j(E, F);
} else { // prototype
//TODO: code to delegate prototype $
}
return result;
}
/* ]]>*/
</script>
// ... any existing javacode jQuery and Prototype using $ function.
ありがとう。
update : 質問をより明確に書き直します。