jQuery
同じページで の複数のバージョンを使用する場合はnoConflict()
、最初のバージョンをロードしてから 2 番目のバージョンをロードする必要があります。PHP インクルードは 2 つのファイルの内容をまとめているだけなので、最終的には次のようになります。
<script type="text/javascript" src="js.jquery/jquery.1.8.2.min.js"></script>
<script type="text/javascript" src="js.jquery/jquery.1.3.2.min.js"></script>
<script> $jq132 = jQuery.noConflict(true); </script>
あなたが本当に欲しいものは次のとおりです:
<script type="text/javascript" src="js.jquery/jquery.1.8.2.min.js"></script>
<script type="text/javascript">
// set version 1.8.2 to variable and remove globals
$jq182 = jQuery.noConflict(true);
</script>
<script type="text/javascript" src="js.jquery/jquery.1.3.2.min.js"></script>
<script type="text/javascript">
// return jQuery version
function getVersion(jq){
return jq().jquery;
}
// set version 1.3.2 to variable and remove globals
$jq132 = jQuery.noConflict(true);
// reset jQuery variable to 1.8.2
jQuery = $jq182.noConflict();
// your code that uses $ variable and jQuery 1.3.2
(function($){
$(document).ready(function(){ alert('Using $ v'+getVersion($)+'!'); });
})($jq132);
// your code that uses $ variable and jQuery 1.8.2
(function($){
$(document).ready(function(){ alert('Using $ v'+getVersion($)+'!'); });
})($jq182);
// your code that uses jQuery variable and jQuery 1.8.2
jQuery(document).ready(function(){ alert('Using jQuery v'+getVersion(jQuery)+'!'); });
</script>
この時点で、バージョンが変数と変数に1.8.2
ロードされ、変数にロードされます。上記のコードは、使用されている変数とそれぞれのバージョンを警告します。ここで、Google API がホストするライブラリを使用した例を見ることができます: http://jsfiddle.net/2kX3E/$jq182
jQuery
1.3.2
$jq132