这可能是一个愚蠢的问题,但我想问一下预取资源如js脚本和图像是否会减慢页面加载。
例如:如果我有一个包含许多链接的页面:
<link rel="prefetch" href="http://example.com/images.png" />
下载它们是否会包含在页面加载时间中或者预取(使用空闲浏览器时间)不是页面加载时间统计信息的一部分?
它是否真的在空闲时间的后台发生,还是只是页面加载的另一部分?
感谢
答案 0 :(得分:2)
这取决于浏览器:
Android浏览器,Firefox和Firefox移动在window.onload之后启动预取请求,但Chrome和Opera立即启动它们可能会从当前页面所需的更重要资源中窃取TCP连接。
从IE11开始,各个网络请求按类型划分优先级,通常按此顺序排列。
网页的根本文件
CSS样式表
WOFF字体
脚本库
使用onload事件处理程序加载的图像
同步XMLHttpRequest(XHR)请求
异步脚本请求(例如indexedDB,Web Workers,File API等)
异步XHR请求
HTML5音频和视频
使用对象元素
延期JavaScript(defer =&#34; true&#34;)
背景也很重要:
IE11还根据请求的上下文优先处理请求:
网页在前台标签中发出的请求
前景标签中的iframe元素中加载的内容所做的请求
网页在后台标签中发出的请求
预呈现内容的请求
<强>参考强>