为什么要少用Iframe

大标 2022年9月15日19:05:47网络推广评论0阅读模式

Iframes提供了一种将一个网站的内容嵌入到另一个网站中的简单方法。但我们需要小心使用iframe。iframe的创建比其他DOM元素(包括脚本和CSS)的创建慢1-2个数量级。

使用iframe的页面通常不包含太多iframe,因此创建DOM节点所花费的时间不会占很大比例。但它带来了一些其他问题:加载事件和连接池。

Iframes阻止页面加载

及时触发窗口的onload事件非常重要。onload事件触发浏览器的忙指示器停止,通知用户当前网页已加载。当onload事件延迟时,会给用户留下页面速度非常慢的印象。

在加载所有iframe(包括其中的元素)后,需要触发window的onload事件。在Safari和chrome中,通过JavaScript动态设置iframe的SRC可以避免这种阻塞情况。

唯一连接池

浏览器只能打开到web服务器的少量连接。较老的浏览器,包括Internet Explorer 6&7和Firefox2中,一个域名(主机名)只能打开两个连接。在新版本的浏览器中,此数字限制已得到改进。Safari 3+和opera 9+可以同时打开4个域名连接,chrome 1+、IE 8和Firefox 3可以同时打开6个连接。您可以通过本文查看特定的数据表:并行连接综述

有些人可能希望iframe有自己的独立连接池,但事实并非如此。大多数浏览器、主页和iframe共享这些连接。这意味着在加载资源时,iframe可能会耗尽所有可用连接,从而阻止主页资源的加载。如果iframe中的内容比主页上的内容更重要,那肯定是好的。但通常,iframe中的内容不如主页上的内容重要。此时,不值得使用iframe中的所有可用连接。一种解决方案是在加载主页上的重要元素后动态设置iframe的SRC。

美国排名前十的网站都使用iframe。在大多数情况下,他们使用它来加载广告。这是可以理解的,也是以简单方式加载广告服务的逻辑解决方案。但是请记住,iframe将影响页面性能。尽可能不要使用iframe。当你真的需要它们时,小心使用它们。

weinxin
我的微信
微信扫一扫
大标
  • 本文由 发表于 2022年9月15日19:05:47
  • 转载请务必保留本文链接:https://www.tanhuibiao.com/3552.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: