我正在开发一个需要以下内容的 webapp:
- 基于复杂函数在html中(使用$.ajax)动态加载大量文本(大约30-100个打印页面)的页面
- 预先加载所有这些文本。它不能一次加载一点。
- 一次只显示少量文本。
我已经能够通过将所有 html 加载到我一直隐藏的 div 元素(库)中来做到这一点。我使用 jquery 在可见的 div(内容)中一次显示一点。
<div id="content">
<ul index="1">
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
...
<ul index="4">
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
</div>
<div id="library" style="display:none">
<ul index="1">
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
...
<ul index="450">
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
</div>
我的问题是,将此文本保留在此 div 中会减慢网页初始加载和操作(它有动画等)。我已经能够确定 html 的加载速度相当快,但是会花费大量时间进行处理(渲染?)。
我怎样才能让这个简单的文本库不占用这么多内存。除了隐藏它之外,有什么方法可以阻止浏览器呈现库 div?有没有更好的地方来保存这个内容(例如一个 javascript 变量),我仍然可以使用 jquery 访问它的 html 元素?