【发布时间】:2018-03-28 10:29:43
【问题描述】:
我对 rel="preload" 属性感到兴奋,因为它看起来可以帮助加快页面呈现时间。
用例是首屏带有大图像的网页。现在,Chrome 直到获取 jQuery(一个相当大的文件)之后才开始下载图像。启用预加载后,它们会并行下载。
但我正在阅读相互矛盾的报告,关于是否应将preload 用于其他地方可见 HTML 元素中的内容(与通过用户交互显示的内容相反,如下拉菜单)。
This post似乎不建议预加载:
何时不使用预加载:
- 当资产在同一页面上的其他地方被引用时。
- 当您不确定用户是否真的需要该资产时。访问者只有 3% 的时间会访问某个页面。
虽然this one 似乎表明它对金融时报网站上的类似情况确实有帮助:
当《金融时报》在他们的网站上引入链接预加载标头时,他们将显示标头图片的时间缩短了 1 秒...
那是什么?我是否应该提供一个早期的“提示”来显示始终显示的首屏图像?还是我应该让浏览器按照通常的顺序访问它?
【问题讨论】:
-
很多时候,感知加载时间比实际加载时间更重要。根据内容的不同,有时您会期望更快地准备好文本,或者更快地提供交互,有时是图像......您应该尝试一下,看看感觉如何。我记得的一个具体案例:6-7 秒的白色加载屏幕是不可接受的,但带有小徽标和加载动画的 9-10 秒完全可以。
-
页面结构是什么? js脚本包含在哪里,是页眉/页脚吗?脚本是否包含在同步/异步模式中?我认为您的问题归结为特定的页面优化问题,因此很高兴看到具有类似结构的 URL 或页面草图来检查 Chrome 如何安排资源加载
标签: html performance optimization preloading