0

構築中のアプリのユーザーにメニュー/ダイアログを表示するためにfancyBoxを使用しています。ボックスに表示されるコンテンツは HTML です。すべて JS で生成し、隠し div に入れて必要に応じて表示したり、fancyBox が開かれたときに AJAX 呼び出しを行ってコンテンツを取得したりできます。

ページに非表示の div がたくさんあることのマイナス面はありますか (モバイル ブラウザーでのパフォーマンスの問題など)。ユーザーエクスペリエンスが明らかにより速くなるので、私はこの方法を好むでしょう。

4

1 に答える 1

1

一般に、リクエストを完了するまでの時間がほとんどの Web アプリの主なボトルネックであるため、できるだけ早く情報を読み込む必要があります。ここでの問題は html ではなく、html に加えて要求されるアセット (画像、ビデオなど) です。これらはメモリを消費し、(まだ) 表示されていない画像をロードすることで表示される画像のロードをブロックする可能性があるため、最初のページのロード時間が遅くなる可能性があります。これらの問題のいずれかが問題であるかどうかを判断するには、ターゲット デバイスでテストする以外に方法はありません。ただし、あなたの場合、アセットを後でフェッチしても実際にはメモリを節約できません。アセットは最終的にある時点でフェッチされているため、ブラウザは最終的に読み込まれるすべてのものに対処できる必要があるためです。最初にそれらを持っているかもしれません。ページの読み込み時間が問題になる場合は、アセットの読み込みを延期できますが、非表示の div が必要になるまで待つのではなく、dom がレンダリングされるまでのみです。そうすれば、ページの読み込みを遅らせることなく、必要なときにアセットを利用できます。たとえば、JQuery では次のようになります。

$(function() {
  $('#hiddenDiv').html(hiddenContent);
});

アセット (画像など) は、それらを参照する html が dom に追加されるまでリクエストされません。

于 2013-05-16T06:45:03.020 に答える