2012-03-07 6 views

答えて

4

デフォルトでは、jQueryは「jQuery」のショートカットとして「$」を使用します。ただし、jQueryの後の任意の時点でjQuery.noConflict()を呼び出すことで、そのデフォルトをオーバーライドすることができ、他のライブラリが両方ともロードされます。たとえば:

<html> 
<head> 
    <script src="prototype.js"></script> 
    <script src="jquery.js"></script> 
    <script> 
    jQuery.noConflict(); 

    // Use jQuery via jQuery(...) 
    jQuery(document).ready(function(){ 
     jQuery("div").hide(); 
    }); 

    // Use Prototype with $(...), etc. 
    $('someid').hide(); 
    </script> 
</head> 
<body></body> 
</html> 

はElementenfresserの答えと同様に

1

http://docs.jquery.com/Using_jQuery_with_Other_Librariesが、私は)(jQuery.noConflictを使用しての上にそれをお勧めしたい参照します。すべての "$"を "jQuery"に変更する必要なく、すべてのjQueryコードをそのまま維持しながら、無名関数でjQueryコード全体をラップすることができます。

jQuery.noConflict(); 
    (function($){ 
    $("div").hide(); //will use jQuery 
    })(jQuery); 

$("div").hide(); //will use prototype 
jQuery("div").hide(); //will use jQuery again. 

jQueryを使用しているすべてのjavascriptファイルを匿名機能でラップすることができます。 $をjQueryに変更する必要はありません。また、関数内で宣言されたすべての変数がグローバルスコープにアタッチされないため、アプリケーションのパフォーマンスが向上します。

2

.noConflict()の方法のほかに、jQueryコードのスコープを設定することもできます。

<script> 
(function($) { 
//write your jQuery code here. 

})(jQuery); 
</script> 
2

あなたには、いくつかの速記を使用することができるようにしたい場合は、

var j$ = jQuery.noConflict(); 

今あなたの代わりにjqueryのための$

のJ $を使用することができます
関連する問題