|
Post by account_disabled on Jan 6, 2024 0:46:55 GMT -5
嗯,<link rel="preload">是一个声明性的获取指令。 从人类的角度来看,这是一种告诉浏览器开始获取特定资源的方法,因为我们作为作者(或作为服务器管理员,或作为智能服务器开发人员)知道浏览器很快就会需要该特定资源。 了解“TypeScript 50 课”,这是我们全新的 TypeScript 指南。包含详细的代码演练、实践示例和常见问题。对于了解足够JavaScript 的开发人员来说是危险的。 跳转至目录 ↬ 功能面板 我们不是已经拥有了吗? 有点像,但不是真的。<link rel="prefetch">已经在网络上得到支持很长一段时间了,并且有不错的浏览器支持。除此之外,我们<link 在 Chrome 中也提供了一段时间的支持。那么预加载有什么新变化呢?它与其他指令有何不同?它们都。 告诉浏览器去获取东西,对吧? 嗯,确实如此,但它们之间存在显着差异。这些差异需要一个闪亮的新指令来解决许多旧指令从未做过的用例。>是一个指令,告诉浏览器获取下次导航可能需要的资源。这主要意味着将以极低的优先级获取资源(因为浏览器知道当前页面需要的所有内 Whatsapp 号码列表 容比我们猜测下一页可能需要的资源更重要)。这意味着预取的主要用例是加速下一次导航而不是当前导航。 <link rel="subresource">最初计划解决当前的导航问题,但它未能以一些引人注目的方式做到这一点。由于Web开发人员无法定义资源的优先级应该是什么,浏览器(实际上只是基于Chrome和Chromium的浏览器)以相当低的优先级下载它,这意味着在大多数情况下,资源请求出来大约在同一时间,如果。 子资源根本不存在的话。 预加载如何做得更好? 预加载是针对当前导航的,就像子资源一样,但它有一个小但重要的区别。它有一个as属性,使浏览器能够执行子资源和预取无法执行的许多操作: 浏览器可以设置正确的资源优先级,以便相应地加载,而不会延迟较重要的资源,也不会落后于不太重要的资源。 浏览器可以确保请求受到正确的内容安全策略指令的约束,并且如果不应该,则不会发送到服务器。 浏览器可以Accept根据资源类型发送适当的标头。(例如,在获取图像时宣传对“image/webp”的支持) 浏览器知道资源类型,因此它可以稍后确定该资源是否可以重用于未来需要相同资源的请求。 预加载也不同,因为它有一个功能onload事件(至少在 Chrome 中,它不适用于其他两个rel值)。 最重。
|
|