多个iframe的性能表现

8

我正在处理一个需要相关网站预览的项目。我们已经尝试了几个想法,其中两个是使用服务来呈现网站并返回截图,或者获取网站并在iframes中加载它作为“实时预览”。

团队确信iframes是更好的选择,因为它们是交互性的,并允许预览动态视觉效果,但我有一些性能上的担忧。

只是想知道是否有人可以提供一些见解,而不需要编写一个服务器来获取网站内容并将其转发到该网站。设计将包含约5张图片/ iframes,相对较小~300x500像素。加载这5个iframes是否类似于在5个标签页中打开这些站点?

1个回答

8
回答您的问题,是的,这类似于在5个选项卡中打开这些网站。iFrames在内存中构建了一个全新的页面,然后将其添加到页面中。
除此之外,iFrames存在巨大的安全问题,因为您无条件地接受提供者的代码。最好使用ajax并在一些解析后将代码注入到自己的DOM中,但我知道有时候选择有限。
请查看此处提供的性能规格。
我认为上述文章的重要部分是:

框架阻止Onload

很重要的一点是窗口的onload事件尽快触发。这会使浏览器的繁忙指示器停止,让用户知道页面已经加载完成。当onload事件延迟时,它会给用户留下页面加载速度缓慢的印象。

窗口的onload事件直到所有的iframe及这些iframe中的所有资源都完全加载后才会触发。在Safari和Chrome中,通过JavaScript动态设置iframe的SRC可以避免此阻塞行为。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接