We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The text was updated successfully, but these errors were encountered:
申请认领
Sorry, something went wrong.
现代浏览器利用各种各样的优化探测技术去预测用户的行为和意图,通过对网络传输,处理和渲染的隐藏,从而实现对用户随后的导向进行预链接,资源的预抓取和预渲染。
此规范定义 HTML 链接元素 <link> 的 dns-prefetch,preconnect,prefetch 和 prerender 关系。这些原函数使得开发者以及生成或递送资源的服务器能够在连接源的决策过程中,帮助用户代理提取和预处理资源以提高页面性能。
<link>
Pre 属性有四个部分,分别对应加载网页时不同的阶段。
Prerender 是指,在内容下载之后开始渲染。更具体的说,Prerender 通过指定加载某一些必要的资源,让用户代理提取和执行,从而在接下来请求资源的时候,用户代理可以更快的响应。
用户代理可以通过抓取必要的子资源并解析(例如预渲染页面)来对 HTML 的响应进行一个预处理。而什么时候开启预渲染的步骤会由用户处理来决定:
<link rel="prerender" href="checkout.html">
通过在 head 标签允许 prerender 属性即可初始化整个页面的后台预渲染。整个页面及其相关的资源都会被下载
head
页面可见之前,使用 Page Visibility API 推迟 JS 行为。例如 Google Analysis。
var hint = document.createElement('link') hint.setAttribute('rel', 'prerender') hint.setAttribute('href', 'next-page.html') document.getElementByTagName('head')[0].appendChild(hint)
参考: https://w3c.github.io/resource-hints/#prerender https://docs.google.com/presentation/d/18zlAdKAxnc51y_kj-6sWLmnjl6TLnaru_WH0LJTjP-o/present?slide=id.p19 http://caniuse.com/#search=prerender
开销上感觉有些不划算
StevenYuysy
No branches or pull requests
认领人须知
The text was updated successfully, but these errors were encountered: