<script> type 属性

Baseline 广泛可用 *

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

* 此特性的某些部分可能存在不同级别的支持。

<script> 元素的 type 属性用于指示该元素所代表脚本的类型:经典脚本、导入映射、JavaScript 模块、推测规则或数据块。

此属性的值指示脚本所代表的数据类型,其值将是以下之一:

属性未设置(默认),空字符串,或 JavaScript MIME 类型

表示该脚本是“经典脚本”,包含 JavaScript 代码。如果脚本引用的是 JavaScript 代码,则鼓励作者省略此属性,而不是指定 MIME 类型。JavaScript MIME 类型 列在 IANA 媒体类型规范中

importmap

此值表示元素主体包含一个导入映射。导入映射是一个 JSON 对象,开发人员可以使用它来控制浏览器在导入 JavaScript 模块时解析模块说明符的方式。

模块

此值会导致代码被视为 JavaScript 模块。脚本内容的解析会被推迟。charsetdefer 属性无效。有关使用 module 的信息,请参阅我们的 JavaScript 模块指南。与经典脚本不同,模块脚本需要使用 CORS 协议进行跨域获取。

speculationrules 实验性

此值表示元素主体包含推测规则。推测规则采用 JSON 对象的形式,用于确定浏览器应预取或预渲染哪些资源。这是 推测规则 API 的一部分。

任何其他值

嵌入式内容被视为数据块,不会被浏览器处理。开发人员必须使用有效的 MIME 类型,该类型不是 JavaScript MIME 类型,以表示数据块。所有其他属性都将被忽略,包括 src 属性。

注意: 在早期浏览器中,type 属性用于标识嵌入式或导入(通过 src 属性)代码的脚本语言。

规范

规范
HTML
# attr-script-type

浏览器兼容性