0

私が作成しているサイトのmyで以下のコードを使用します。

            <!-- ScrollTo & highlightfade -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>              
<script type="text/javascript" src="'.$url.'/js/jquery.scrollTo-min.js"></script>
<script type="text/javascript" src="'.$url.'/js/jquery.highlightFade.js"></script>
<script type="text/javascript" src="'.$url.'/js/init.js"></script>

            <!-- The rest of the scripts -->
<script type="text/javascript" src="http://code.jquery.com/ui/1.8.23/jquery-ui.min.js"></script>

<script type="text/javascript" src="'.$url.'/js/jquery.tipTip.js"></script>
<script type="text/javascript" src="'.$url.'/js/jquery.nivo.slider.pack.js"></script>
<script type="text/javascript" src="'.$url.'/js/nivo.slider.js"></script>
<script type="text/javascript" src="'.$url.'/js/nicEdit.js"></script>
<script type="text/javascript" src="'.$url.'/js/expand.js"></script>
<script type="text/javascript" src="'.$url.'/js/turn.js"></script>
  • ご覧のとおり、私は2つのjQueryライブラリを使用していますが、これは私が理解していることですが、完全に間違っています。問題は、それがこのようにしか機能しないということです!それらの1つを削除すると、一部のスクリプトが機能しなくなります。また、ライブラリを最新バージョンに更新してそのバージョンのみを使用しようとしましたが、上記のスクリプトのほんの一握りしか機能しません。

  • 2番目の問題は次のとおりです。datetimepickerスクリプトを読み込もうとすると機能しません。これは、jQueryライブラリの競合が原因のようです。

1つのライブラリだけですべてのスクリプトを同時に機能させることはできません。また、2つのライブラリを使用すると、datetimepicker-scriptが機能しません。私は何が間違っているのですか?

4

2 に答える 2

1

あなたはjQueryとjQueryUI、そしてたくさんのプラグインを使用していますが、それは何も悪いことではありません。これについてよくわからない場合は、使用する前にjqueryとUIについて詳しく読んでください。

日付ピッカーが問題を引き起こしている場合は、いくつかの関連する例を見て、何が間違っているのかを確認してください-http: //jqueryui.com/datepicker/

編集: @ user1580380jqueryとjqueryUIは2つの別個のものであり、1つ目は優れた簡単なjsライブラリであり、2つ目はdatepickerなどの機能を追加するためのUIです。日付ピッカーを機能させるには、両方を含める必要があります。日付ピッカーの実装でエラーが発生している可能性があります。このためのコードを自由に貼り付けてください。

編集: jquery 1.3を使用していることに気付きました。これが問題である可能性があります。これを最新バージョン、1.8.xに更新して、これで問題が解決するかどうかを確認してください。

于 2012-10-27T15:57:22.617 に答える
0

コードスニペットには、複数の種類のスクリプトが表示されます。

  1. コアjQuery
  2. jQueryを使用および依存するjQueryプラグインスクリプト
  3. jQueryを使用および依存する独自のスクリプト
  4. jQuery UI(jQuery上に構築されたUIライブラリ)
  5. jQueryとjQueryUIの両方を使用および依存するjQueryプラグインスクリプト

jQueryを使用するすべてのスクリプトは、特定のバージョンのjQueryに対して作成およびテストされています。複数のバージョンのjQueryで動作する場合もあれば、1つの特定のバージョンのjQueryでのみ動作する場合もあります。

jQueryを使用して互換性のあるjQueryのバージョンを指定するのは、スクリプトの作成者の責任です。スクリプトを使用する人は、必要なjQueryのバージョンを理解して理解し、スクリプトが正しく機能するための適切な環境(適切なバージョンのjQueryが存在する)を作成する責任があります。

jQueryUIの特定のバージョンは、コアjQueryの特定のバージョンとのみ互換性があります。同様に、jQueryUIプラグインは、jQueryUIとjQueryの両方の特定のバージョンとのみ互換性があります。あなた自身がこれらすべての互換性のあるバージョンを混ぜ合わせなければなりません。

それぞれが異なるバージョンのjQueryを必要とする複数のプラグインを使用したい場合は、それを管理できる場合がありますが、セットアップは簡単ではなく、jQueryを効率的に使用する方法ではなく、カスタムが必要です。複数のバージョンをロードし、適切なプラグインが適切なバージョンのjQueryを取得するようにプログラミングします。一般に、これは非効率的で複雑であり、特に高度なJavaScript開発者でない場合は混乱しやすいため、まったくお勧めできません。

まず、互換性があると言っているすべてのスクリプトのjQueryのバージョンのリストを作成する必要があります。そのリストがあれば、何が何と互換性があるのか​​を理解し始めたり、同じバージョンのjQueryとすべて互換性のある問題を解決する一連のスクリプトを見つける方法について調査を開始したりできます。

たとえば、jQueryUI 1.8.23は、jQuery 1.3.2(コアjQueryライブラリのかなり古いバージョン)よりもはるかに新しいものです。これら2つから始めて、互換性があることを確認することをお勧めします。次に、最終的にこれら2つの組み合わせと互換性のあるプラグインのみを追加します。互換性のあるjQueryのバージョンを確認するには、各プラグインのドキュメントを参照する必要があります。jQueryの互換性に関するドキュメントがない場合は、プラグインのソースを調べて、そこに何らかの兆候があるかどうかを確認してください。それでも互換性情報がない場合は、独自のテスト/デバッグを行って互換性を確認するか、互換性情報を提供する別のソリューションを選択する必要があります。

jQueryとjavascriptの開発に比較的慣れていない場合は、機能するものと機能しないものに関するドキュメントを含む組み合わせを使用し、テスト済みの要件と互換性のある環境を構築することをお勧めします。非互換性の問題のデバッグと修正は、初心者のトピックではありません。javascriptデバッグコンソールで問題が発生している最初の場所を特定できる場合とできない場合がありますが、間違っているとわかったものを修正することは、より高度なトピックです。

最終的に、異なるプラグインの同じページに複数のバージョンのjQueryをロードする必要があり、問題を解決するためのより良い方法がないと判断した場合、それは可能ですが、慎重に行う必要があります。このjQueryドキュメントページでは、その方法の基本について説明しています。

于 2012-10-27T16:24:16.080 に答える