0

たくさんの画像を表示するページがいくつかあります (小さいですが、まだたくさんあります)。

最初にページのサブセットを表示する 2 つの方法があるため、ユーザーはページ上の何かを見る前にシバン全体がダウンロードされるのを待つ必要がなく、それを .json にあるすべてのものに置き換えることができます。 jQuery 経由で解析されるファイル。

最初は、次のようにしました。

var placeholderForOscars = "<div class=\"yearBanner\">2012</div><section class=\"wrapper\" ><a id=\"mainImage\" class=\"floatLeft\" href=\" . . . (etc) </section>";
$('#MoviesContent').html(placeholderForOscars);
getMovies('Content/oscars.json');

...しかし、データをファイルの「プレースホルダー」varに入れ、次のようにする方が高速でエレガントだと思いました:

$('#MusicContent').load('Content/grammies.html');
getMusic('Content/grammies.json');

IOW、どちらの場合も、最初のページ程度の html をページに配置し、その後、それをすべてのデータに置き換えます (スピンスルー/解析され、html に変換された後)。

2 番目の方法の方が速いと思っていましたが、load() をまったく呼び出していないかのように、ページが読み込まれる前に遅延が発生します。私のやり方が間違っているのでしょうか、それとも元の方法よりもロードが遅いのでしょうか?

4

1 に答える 1

2

load非同期であるため、データを取得するには、サーバーに対してまったく新しい要求を行う必要があります。それほど多くのデータではないため、最初のコード ブロックのようにインライン化する方がはるかに効率的です。

于 2013-08-25T14:16:03.427 に答える