選択するときは、ID セレクター から始めるのが最善です。これは、JQuery が内部で ID 選択に document.getElementByID メソッドを使用しており、他のすべての DOM 選択メソッドよりも高速であるため、これは理解しやすいと思います。したがって、$("#") で始めるのが最適です。例: コードをコピー コードは次のとおりです。 🎜> class=" d"> ; $(".b .c .d")//遅いもの $("#a .b .c .d")//速いもの $() のコンテキストを提供します$() を使用してページ要素を選択する場合、選択範囲を提供すると、選択時間を短縮できます。つまり、セレクターで狭い範囲内のみをフィルターできるようにします。ページ全体の代わりにページ もちろんフィルタリング時間は短縮されます。これは、$() 関数内のコンテキストとして 2 番目のパラメータを提供することで実現できます Copy code コードは次のとおりです。 hi </div>alert($(".inner", document.getElementById("test")).text()); //コンテキストを提供することで速度を上げます <div class="codebody" id="code49636">alert($(".inner").text());//すべての要素を走査するため、上記よりも遅くなります <br> 🎜> もちろん、jquery 定義 (または js 関数) イベント内で、これを使用してコンテキストを参照できます: コードをコピー コードは次のとおりです。 hi > </u>$("#test").click(function() { </a>var text = $(".inner" , this).text(); //これは $( "#test") </span>alert(text);//こんにちは </div>}); > <div class="codebody" id="code27609">もちろん、上記の例は次の 2 つの方法のように書くこともできます: <br><br><br><br><br>コードをコピー<br><br><br> コードは次のようになります。 <br><br> </div> <br><div class="inner">hi<br><div class="codetitle"> <script type="text/javascript"> <span>alert($(" #test .inner").text()); //メソッド 1 <a style="CURSOR: pointer" data="67130" class="copybut" id="copybut67130" onclick="doCopy('code67130')">alert($("#test").find (".inner").text());//メソッド 2 が最適でした <u> find メソッドの使用がすべてのメソッドの中で最も効率的です もちろん、ID セレクター、つまり $(" #..") を使用して選択する場合、コンテキスト パラメーターを指定する必要はありません。これは速度には影響しません。保存。頻繁に使用される JQuery でラップされた要素タイトルにあるように、$( )ページ要素の選択には時間がかかるため、この無駄は、 などの変数として保存すると回避できます。 コードをコピー コードは次のとおりです: one ; 2 4 </u>for (i = 0; i alert($("ul li")[i].innerHTML);//ここでも同じです、非常に悪い </a></span>} </li></div>var $li = $("ul li"); <div class="codebody" id="code48567">for ( i = 0; i alert($li[i].innerHTML); //ここでも同じです、良い <br>} <br> コードからわかるように、複数のコードを避けています。選択を繰り返すとパフォーマンスが向上します:-) セレクターの使用はできる限り少なくする JQuery のセレクターは配列指向であるため、次のような条件が許せばセレクターの使用はできるだけ少なくしてください。 コードをコピー コードは次のとおりです: <br>$("#Div0").slideDown("slow"); .slideDown("遅い"); <br>$("#Div2").slideDown("遅い");//遅い <br><br>$("Div0,Div1,Div2").slideDown("遅い" ");//fast <br> ご覧のとおり、セレクターを使用して選択した要素をカンマで区切ったり、複数の要素を選択したりすると、コードがより簡潔になるだけでなく、ただし、作成される JQuery インスタンスの数を減らすことで、パフォーマンスが若干向上します。ループが多い場合は $().each の使用を避け、for ループを使用してください $ を使用する ().each メソッドを使用すると、ループを実行する際のプログラミングが容易になります。 $().each を使用する場合、ループの数が少ない場合のパフォーマンスへの影響は無視できますが、数が多い場合、パフォーマンスへの影響は大きくなります。 情報を確認したところ、数値が 1000 未満の場合は、$().each メソッドが使用できるとのことです。使用する必要があります。 DOM に対する操作を可能な限り最小限に抑えます。ページ上の DOM に対する操作 (ページ上のテキストの挿入や削除など) は比較的負荷が高いため、この変化を最小限に抑えることが、パフォーマンスのベスト プラクティスです。例: コードをコピー コードは次のとおりです: <br>var $list = $("#test"); <br>for (i = 1) ; i < 101; i ) { <br>$list.append("<li>Item" i "</li>"); // 非常に悪いです、dom を 100 回変更します <br> <br>var listItem = ""; <br>for (j = 1; j listItem = "<li>Item" j "</li>"; } <br> $list.html(listItem); <br>// dom を変更するのは 1 回だけにしてください <br><br> 最初の例では 100 回変更された DOM には影響しませんが、2 番目の例では DOM が 1 回変更されただけであり、パフォーマンスの違いは明らかです。 JQuery アニメーション効果をブロックできます場合によっては、JQuery アニメーションをオフにできれば、パフォーマンスを向上させることができます。ブロック方法は次のとおりです。コードをコピーします コードは次のとおりです。 🎜>jQuery .fx.off = true; </div> パラメータが JS オブジェクトである場合は、JQuery に非常に適したオブジェクト を使用してください。プラグイン、または JQuery の CSS および attr メソッドを使用して、キー/値または JS キー/値オブジェクトのペアをパラメーターとして渡すと、 などの JQuery オブジェクトの作成を減らすことができます。 コードをコピーします コードは次のとおりです: </div>$("div").css ("display", "block"); <div class="codebody" id="code44295">$("div").css("background-color", "blue") <br>//より多くの Jquery オブジェクトを作成するため遅い <br><br>$("div").css({ "display": "block", "background-color": "blue" }); >//高速、オブジェクトを 1 つだけ作成します <br> もちろん、連結メソッドも使用できます: コードをコピーします コードは次のとおりです: </span>$("div").css("display", "block").css("background-color", "blue"); </div> <div class="codebody" id="code43631"> ただし、このメソッドのパフォーマンスは上記のメソッドほど良くありません。2 つのメソッドを使用する必要があり、さらに一時オブジェクトを生成する必要があります。上記はいくつかのヒントです。 JQueryのパフォーマンスを向上させる