1 つの HTML ページで複数の JS スクリプトを jquery と共に使用しています。これらのスクリプトには、スライダー、スティッキー メニュー、シャドウ ボックス、最後に画像プレビュー スクリプトが含まれます。この画像プレビュー スクリプトは、他のスクリプトを失敗させるものであり、単独で動作します。body タグの後に挿入された単純なコードです。
そのコードは次のとおりです。
<script type="text/javascript">
//<![CDATA[
jQuery.noConflict();
(function(jQuery){
jQuery('#first a').imgPreview();
})(jQuery);
//]]>
</script>
完全な HEAD コード:
<script src="js/jsapi.js" type="text/javascript"></script>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/html5.js" type="text/javascript"></script>
<script type="text/javascript" src="js/easySlider1.7.js"></script>
<script type="text/javascript">
jQuery.noConflict();
$(document).ready(function(){
$("#slider").easySlider({
auto: true,
continuous: true
});
});
</script>
<script src="js/scroll.inicio.js"></script>
<script src="js/jquery.scrollTo.js"></script>
<script src="js/jquery.nav.js"></script>
<script>
$(document).ready(function() {
$('#sticky').onePageNav({
changeHash: true
});
});
</script>
<script type="text/javascript">
function sticky_relocate() {
var window_top = $(window).scrollTop();
var div_top = $('#sticky-anchor').offset().top;
if (window_top > div_top)
$('#sticky').addClass('stick')
else
$('#sticky').removeClass('stick');
}
google.setOnLoadCallback(function() {
$(window).scroll(sticky_relocate);
sticky_relocate();
});
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length- 2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
</script>
<script type="text/javascript" src="js/shadowbox.js"></script>
<script src="js/imgpreview.full.jquery.js" type="text/javascript"></script>
<script type="text/javascript">Shadowbox.init({ overlayOpacity: 0.9 });</script>
コンソールにこの 3 つのエラーが表示される
Uncaught TypeError: Cannot call method 'replace' of undefined imgpreview.full.jquery.js:58
Uncaught TypeError: Property '$' of object [object Window] is not a function index.html:21
Uncaught TypeError: Property '$' of object [object Window] is not a function index.html:49
競合がどこにあり、それを修正する方法を特定する必要があります。
どうもありがとう