2


javascript ファイルに問題があります。いくつかのスクリプトは、HTML ファイルでの順序によっては機能しません

ソースでわかるように、次のとおりです。

<script type="text/javascript" src="js/prototype.js"></script> 
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script> 
<script type="text/javascript" src="js/lightbox.js"></script> 
<script src="http://code.jquery.com/jquery-1.4.4.js" type="text/javascript"></script> 
<script type="text/javascript" src="js/grayscale.img.js"></script>

タグをこの順序で配置すると、グレースケール img は機能し、ライトボックスは機能しませんが、jquery リンクを一番上に移動すると、グレースケールは機能しなくなりますが、ライトボックスは機能します。

だから私が望むのは、それらの両方を機能させることです。方法はありますか。前もって感謝します!:-)

4

2 に答える 2

1

私のコメントで言ったように、2つのフレームワークの使用を避けるために:

本当に両方を使用する必要がある場合は、firebug(または他のブラウザの場合は同様のもの)を使用して、結果のjavascriptエラーを確認してください。両方のフレームワークの「互換性/非競合モード」をアクティブにする必要があるため、それぞれが強制終了されることはありません。他の。

詳細については、jQueryのドキュメントをご覧ください。

于 2011-01-27T13:05:06.800 に答える
0

問題は、Prototype と jQuery で使用される名前空間との競合が原因である可能性があります。どちらも$名前空間へのショートカットとして参照されます。両方のライブラリを一緒に使用しようとすると、必然的に競合が発生します。

この問題を回避する方法を含め、他のライブラリで jQuery を使用する際に役立つ記事を次に示します。

http://docs.jquery.com/Using_jQuery_with_Other_Libraries

ただし、使用しているプラ​​グインが、各ライブラリが適切に機能するための正しいスコープ内で参照されていることを確認するように注意する必要があります。可能であれば、1 つのライブラリのみを使用することに固執する方がおそらく賢明です (jQuery で使用できるライトボックスのクローンはたくさんあります)。

于 2011-01-27T13:09:54.160 に答える