8

私の Web プロジェクトの 1 つで、ブラウザー (Windows 7 x64)、特に IE で非常に遅い javascript/jQuery コードを大量に使用しています。

ホームページでのみ、同時に 3 つの Ajax リクエストを使用します。

検索ページでは、スクロールイベント、「検索タグ」(単純なアンカータグ)のクリックイベントなどで発生するajaxリクエストも使用します。これにより、一般的にデータの読み込みが非常に遅くなります。

私は、Anythingslider、jquery coockies プラグイン、Raty (評価プラグイン)、Tipsuy、jQuery coreUISelect、jScrollPane、マウス ホイールなどの jQuery プラグインを使用しています。これらのサード パーティ製プラグインはすべて、縮小して jquery.plugins.js ファイルにまとめました。約80KBです。

jQueryでDOM要素をたくさん選択しています。たとえば、次のコードを使用します。

$("#element")

それ以外の:

document.getElementById('element');

また、キャッシングとHTTPリクエストの削減のために、すべてのサードパーティのjQueryプラグインのcssファイルを1つのファイルにまとめたため、5,000行を超える大きなCSSファイルが1つあります。

  1. コードを最適化してパフォーマンスを向上させ、Web ページの読み込みを高速化するにはどうすればよいでしょうか。

  2. JS コードのデバッグにはどのようなツールを使用できますか? firebug または Chrome ネイティブ開発者ツールを開いて Google Chrome または Firefox でページを更新すると、その場合のページの読み込みも非常に遅くなることを忘れていました。時には Firefox がつぶれることさえあります。

  3. 生の js を使用して DOM 要素を選択すると、ドキュメントを解析するためのより優れた高速な方法が得られますか? それとも、jQueryの選択をやめるべきですか?話は約50要素です。

  4. Anythingslider などの外部プラグインを分離してから縮小する必要がありますか? それとも、「オールインワン」のjsファイルを持っている方が良いですか?

  5. jQuery プラグインの css コードもメインの style.css から分離した方がよいでしょうか? 要素にカーソルを合わせて css ファイルから :hover 状態に影響を与えることさえ、かなり遅いためです。

皆さん、本当に頼りにしています。

私は自分の質問に対する答えを見つけるために一晩中グーグルで検索してきましたが、ここでそれを見つけることを本当に望んでいます.

ありがとう。

4

4 に答える 4

7

1)それを縮小する

2)すべてのブラウザにはデバッグツールが組み込まれています

3)変数に参照を格納することにより、domへのアクセスを減らします。同じ要素を2回検索しないでください。

4)よく知られているcdnを分離して使用する

5)管理しやすいように分離する

その他のjQueryのヒントはこちら:jquery-performance-rulesおよびこちら:improve-your-jquery-25-excellent-tips

すべての静的リソースがディスクルックアップなしでキャッシュされていることを確認してください

このライブラリはかなりクールです

于 2012-11-02T09:06:23.503 に答える
2

ここでセレクターのパフォーマンスを比較できます:http://jsperf.com/

HTMLコードを設定し、jQuery libを含めて、比較する各セレクターをさまざまなテストケースとして配置するだけです。

jquery-performance-rulesの多くは引き続き適用されますが、

jquery-proven-performance-tips-tricksもご覧ください

于 2012-11-02T09:04:54.210 に答える
2

特にあなたのような大規模な Web サイトでは、コードを改善する方法がたくさんあるので、外部リンクを投稿するだけの方が便利だと思います。これらは非常にうまく書かれており、簡潔なチュートリアルとツールだからです。それらのいくつかを次に示します。

JetBrains の PHPStormと呼ばれる Web アプリケーション/Web サイトを構築するための IDE もお勧めします。これは商用ソフトウェアですが、タイピング中に改善のためのヒントやヒントが得られるため、間違いなく価値があります。

于 2012-11-02T09:12:26.440 に答える
0

生のパフォーマンスは問題ではないかもしれません。ページ読み込み時のパフォーマンスの低下に気付いた場合は、ページの初期化時に JavaScript の実行を最小限に抑えることについて具体的に書いたこの記事を参照してください。

http://blog.lavoie.sl/2013/12/optimizing-page-loads-by-reducing-javascript.html

于 2013-12-07T06:05:03.803 に答える