質問

私は自分のコードのパフォーマンスを向上させる方法を探しています。現在、私はこれに似た何かをします:

$(".div1").load("Page.aspx #section1");
$(".div2").load("Page.aspx #section2");
しかし、これは私が2つのGET要求を行うために抱えていることを意味します。このような何かを行うことによって1つの要求にこれを削減する方法はあります:

var content = $.load("Page.aspx");
$(".div1").html(content("#section1"));
$(".div2").html(content("#section2"));

乾杯!

役に立ちましたか?

解決

これを試してみてください

$.get('Page.aspx', function(data) {
  var dom = $(data);
  $(".div1").html(dom.find("#section1"));
  $(".div2").html(dom.find("#section2"));
});

ところで:私の例ではdomがあなたの<body>タグコンテンツの最初leveのを保持し、findは、この最初のレベルで何かを見つけることができませんので、おそらくあなたは、あなたのセクションの周りのホルダー要素が必要になります。

<body>
  <div id="holder">
    <div id="section1"></div>
    <div id="section2></div>
  </div>
</body>  

他のヒント

あなたはJSONを使用するように切り替えることはできますか?

$.getJSON('Page.aspx', function(data) {
    $(".div1").html(data.section1);
    $(".div2").html(data.section2);
});

は、サーバーからのあなたの応答をエンコードする必要がありますとはいえこれは、より速く、通常のGETをやって、その結果を横断するよりもなります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top