多くの JavaScript ライブラリは$
、jQuery と同様に、関数名または変数名として使用します。jQuery の場合、$
は単なるエイリアスであるためjQuery
、すべての機能は $ を使用しなくても利用できます。jQuery と一緒に別の JavaScript ライブラリを使用する必要がある場合は、次の呼び出しで $ の制御を他のライブラリに戻すことができます$.noConflict()
。
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
// Code that uses other library's $ can follow here.
</script>
この手法は、.ready() メソッドが jQuery オブジェクトをエイリアスする機能と組み合わせると特に効果的です。.ready() に渡されるコールバック内で、後で競合することを恐れずに $ を使用できるためです。
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($) {
// Code that uses jQuery's $ can follow here.
$("div").hide();
});
// Code that uses other library's $ can follow here.
$("content").style.display = 'none';
</script>
ソース: jQuery.noConflict