1

我有 Large.html,这是一个网页,上面有很多图像和 javascript,需要很长时间才能加载。

从其他页面(a.html、b.html)如何使用 JavaScript 预取 Large.html(以及页面上的所有元素),以便我可以将页面缓存在用户浏览器中以帮助加快页面加载.

我需要使用隐藏的 IFRAME 吗?

4

3 回答 3

1

您可以只加载页面的正文,将其放入具有“显示:无”的 div 的 innerHTML 中,稍等片刻,然后使当前 div 显示为 none,新页面的 div 变为可见的。

它可能仍然需要出去实际下载图像,但它基本上应该是预加载的。

于 2009-10-10T00:40:37.940 回答
0

是的,我会使用隐藏的 iframe。通常,这将处理可能在加载缓慢的页面上运行和加载其他资产的脚本。

于 2009-10-10T00:49:20.343 回答
0

如果您这样做,请确保在加载 a.html 页面执行此操作,这样您就不会阻止用户在此页面上进行交互。

我说if,因为您经常不确定用户是否会加载 Large.html 页面。

除此之外,如果其他页面的大部分主要是图像,我会加载它们,而不是 iframe 中的整个页面(html、css、js 和图像)。

我见过太多网站试图在 iframe 中加载整个内容(隐藏)......并且在此过程中使当前页面无法使用。:-(

于 2009-10-10T00:59:45.780 回答