【发布时间】:2012-09-14 23:33:13
【问题描述】:
我在一页中加载了很多 Youtube 视频(最多 25 个)。我应该为每个视频使用 iframe 还是仅在 <object> 中显示?据我了解,如果我使用 iframe,我的页面会加载得更快,因为它会先加载我的页面,而不必等待加载视频。我说的对吗?
【问题讨论】:
我在一页中加载了很多 Youtube 视频(最多 25 个)。我应该为每个视频使用 iframe 还是仅在 <object> 中显示?据我了解,如果我使用 iframe,我的页面会加载得更快,因为它会先加载我的页面,而不必等待加载视频。我说的对吗?
【问题讨论】:
你的理解不正确。您的“页面”(即您的 HTML 文档本身)将在相同的时间内加载和呈现。然而,使用 <iframes> 意味着浏览器不仅要加载与 <object> 相同的视频文件,还要加载每个 iframe 中包含的 HTML。
请注意,YouTube 指示用户使用 <iframe> 嵌入视频,因为它允许 YouTube 自定义发送给用户的 HTML:适当的浏览器将获得 HTML5 <video> 处理。
所以这是一个权衡:您可以使用 <object> 或 <video> 稍微减少页面加载时间,但要排除非 Flash(或分别为非 HTML5 浏览器),或者您可以使用 <iframe>并确保与访问者可能使用的任何浏览器兼容。
【讨论】:
您应该使用<iframe>,因为<object> 已被弃用。第一个支持 Flash 和 HTML5 视频。第二个仅支持 Flash。这对于不使用或无法使用 flash 的用户(所有 iPad/iPhone 用户,一些 Linux 用户)非常有用。
【讨论】:
<object clsid=""> 也已被弃用(不要与 W3C 批准的 <object type="" /> 混淆)。