0

私はJQueryが初めてです。検証を含む単純なフォームを作成しようとしています。多くの例があるこの優れたサイトに出くわしました: http://jqueryvalidation.org/email-method

jquery チュートリアルから、がローカル<script src>のコピーを指していることを学びました。jquery.jsただし、上記のリンクのすべての例では、さまざまな URL を指すさまざまなソースが言及されています。

例えば:

src="http://code.jquery.com/jquery-1.9.1.min.js"
src="http://jquery.bassistance.de/validate/jquery.validate.js"
src="http://jquery.bassistance.de/validate/additional-methods.js"

ローカルに保存することと Web ソースを参照することの違いは何ですか? これらの URL をアプリケーションに組み込むとどうなりますか? それは、私のコードが格納されているサーバーの動作に条件付けられることを意味しますか? もしそうなら、それはリスクではありませんか?サーバーがダウンした場合はどうなりますか?

すいません、違いが知りたいだけです。

4

6 に答える 6

3

ローカルに保存する必要がなくなります。また、Google など、かなりの数の人が使用する CDN からリンクしている場合は、ウェブサイトにアクセスする人が CDN を既にキャッシュしているため、パフォーマンスを向上させることもできます。jQuery の Google CDN ビットへのリンクは次のとおりです: https://developers.google.com/speed/libraries/devguide#jquery

于 2013-06-07T20:13:32.567 に答える
1

これは CDN と呼ばれます。基本的には、CDN ホストが複数のリージョンで利用できるため、クライアント マシンで高速になることがあります。また、多くのサイトが CDN を使用し始めているため、jQuery ライブラリが既にキャッシュされている可能性が高くなります。

おっしゃる通り、CDNがダウンする可能性があります。私はこのスクリプトを H5BP で見つけました。これには、少なくとも jQuery 用のスクリプトを含めることで、実際にはフェイル セーフなアプローチがあります。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="<your server>/jquery-1.10.1.min.js"><\/script>')</script>

https://github.com/h5bp/html5-boilerplate/blob/master/index.html#L27-L28

CDN を使用する利点の一覧はこちらをご覧ください。

于 2013-06-07T20:16:33.173 に答える
1

これらの URL を使用する場合、ホストされているサーバーが確実に配信できることに依存していることは間違いありません (スクリプトを悪意を持って変更することもありません)。

とはいえ、これらの参照は何千ものウェブサイトで使用されています

http://code.jquery.com/jquery-1.9.1.min.js
http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js

また、使用するサーバーよりもはるかに高速で信頼性の高いサーバーによってホストされています。それらを使用すると、自分でスクリプトをホストする必要がないという利点もあります。また、クライアントがサイトにアクセスしたときに jQuery の別のコピーをダウンロードする必要がないことも意味します。これは、おそらく既にキャッシュされているためです。

要するに、外部でホストされたスクリプトを使用することは、あなたにとって有益であり、クライアントにとってより高速ですが、ホストを信頼していることを確認する必要があります.

他の人が述べたように、外部サーバーがダウンした場合に備えて、フェールセーフ スクリプトを含めることができます。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>if(!window.jQuery) document.write('<script src="localScripts/jquery.min.js"></script>');</script>
于 2013-06-07T20:13:22.193 に答える
1

これらは、かなり標準的な Web ホスト URL です。それらを使用することは良い習慣です。サーバーに依存するようになりますが、これらのファイルをホストするサーバーは、ほとんどのサイトが実行されている標準の共有ホスティング サーバーよりも信頼性が高く、実際には改善されています.

標準の CDN ローアクションからロードする方法があり、ローカル コピーからのロードに失敗した場合の例を次に示します。

<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js"></script>
<script>!window.jQuery.ui && document.write(unescape('%3Cscript src="/scripts/jquery-ui-1.8.14.min.js"%3E%3C/script%3E'))</script>
于 2013-06-07T20:13:47.920 に答える
1

ホストによっては、キャッシュが改善される可能性があります。また、リクエスト自体の待ち時間も短縮されます。基本的に、ボトルネックを引き起こす可能性のある単一のノードではなく、冗長ノードからのソースの提供を最適化するのは CDN です。

于 2013-06-07T20:13:15.593 に答える
0

ライブラリ JQuery を使用している場合、多くのプログラマーがライブラリ JQuery の Google からの URL をターゲットにすることを選択しているため、このアプリケーションがインターネットに接続できることが理解されていますが、マルチメディア アプリケーションを開発している場合は、このライブラリをローカルにロードする必要があります。次のソースは、インターネットにアクセスできることを検出し、URL またはローカル ファイルのどちらを指すかを決定することです。

<html>
  <head>
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">

        // Comprobar carga desede google
        if (window.google && window.google.load) {
          google.load("jquery", "1.3.2");
          window.defaultStatus='ONLINE-MODE';
        } else {
          document.write('<script type="text/javascript" src="local-jquery/jquery.min.js">     <\/script>');

          window.defaultStatus='LOCAL-MODE';
        }

        window.onload = function() {
          $('#test').css({'border':'2px solid #f00'});
          $('#test').append("<b> "+window.defaultStatus+"</b>");
        };
    </script>
  </head>
  <body>
    <p id="test">jQuery</p>
  </body>
</html>

私はあなたが助けることができたことを願っています

于 2013-06-07T20:34:12.303 に答える