Я бы посоветовал вам «кэшировать» ваш html на странице, но принудить браузер не отображать его до тех пор, пока он не понадобится (пока пользователь не запросит данные или просто не прокрутит до них).Основная идея - добавить ваш html (с данными) на страницу, но закомментировать.Например,
<div id="cached-html">
<!--
<div>
...some custom html here
</div>
-->
</div>
Затем, как только пользователь запросил HTML, вы можете сделать следующее:
var html = document.getElementById('cached-html'),
inner = html.innerHTML;
html.innerHTML = inner.substring(4, inner.length - 4);
Плюсы.это то, что вы не беспокоите свой браузер с начальным рендерингом (позже вы можете просто использовать display:none
, чтобы скрыть его снова), так что ваша страница рендерится быстрее.Ваши данные (и, как следствие, внутренний html) часто меняются, поэтому будет лучше перерисовывать их каждый раз, когда пользователь запрашивает их, но если они почти статичны, то Hide / Show должен быть более эффективным.