-1

私は自分のウェブページで fancybox を使用しました。また、次のjavascriptファイルを使用する別のスライダーも使用しました

<script src="NewsSlider/Allmaritim.all.min.js" type="text/javascript"></script>

問題は、fancybox が正しく動作していないことです。上部の JavaScript ファイルを削除すると、fancybox は正常に動作します。

javascript ファイルを個別に動作させる方法はありますか。

4

5 に答える 5

4

問題は、両方のファイルで同様の関数 [少なくとも関数名] が定義されている可能性があります。あなたのファンシー ボックスは、クリックまたはオンロード イベントに関連付けられていますか? それ以外の場合は、ファイルを含める方法を並べ替えます。つまり、ファンシー ボックス スクリプトの後に Allmaritim.all.min.js を含めます。ロードする前にこのファイルが必要ない場合は、ページの下部に含めることもできます。

于 2013-02-08T08:51:04.303 に答える
1

彼らはおそらく両方ともjqueryを使用しています

jQuery.noConflict(true);2 つのスクリプトへの 2 つの JavaScript 呼び出しの間に呼び出してみてください

于 2013-02-08T08:51:43.930 に答える
0
<html><head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
    <div id="log">
    <h3>Before $.noConflict(true)</h3>
    </div>
<script src="http://code.jquery.com/jquery-1.6.2.js"></script>
<script>
    var $log = $( "#log" );
    $log.append( "2nd loaded jQuery version ($): " + $.fn.jquery + "<br>" );
    jq162 = jQuery.noConflict(true);
    $log.append( "<h3>After $.noConflict(true)</h3>" );
    $log.append( "1st loaded jQuery version ($): " + $.fn.jquery + "<br>" );
    $log.append( "2nd loaded jQuery version (jq162): " + jq162.fn.jquery + "<br>" );
</script></body></html>

このサンプルコードを調べてください。詳細については、このリンクhttp://api.jquery.com/jQuery.noConflict/を参照してください。

于 2013-02-08T09:56:19.137 に答える
0

$.noConflict(); を使用できます。または jQuery.noConflict();

于 2013-02-08T08:51:24.567 に答える
0

JavaScript ライブラリ変数、名前が他の変数と競合することがあります。$ 変数と同様に、jQuery 他のライブラリと競合することがあります。彼らは[noConflict] ここで解決策を提供します。したがって、競合する問題を解決するには、これらの JavaScript ライブラリのドキュメントを読む必要があります。

于 2013-02-08T08:52:00.503 に答える