Navigator: mimeTypes 属性

返回一个 MimeTypeArray 对象,其中包含一个 MimeType 对象列表,这些对象表示浏览器识别和支持的 MIME 类型。可以通过此数组查询用于处理指定类型文件的已启用插件的信息。返回对象的命名属性(在非常老的浏览器版本中除外)是不可枚举的。

规范的最新版本会硬编码返回的 MIME 类型集合。如果 PDF 文件可以内联显示,则会列出 application/pdftext/pdf。否则,将返回一个空列表。

注意:请使用 Navigator.pdfViewerEnabled 来确定是否支持 PDF 文件的内联查看。不要从此属性推断。

旧版本的浏览器不会硬编码此属性返回的列表,可能会返回其他 MIME 类型。

一个 MimeTypeArray 对象,该对象具有 length 属性以及 item(index)namedItem(name) 方法。

如果支持 PDF 内联查看,则此数组包含 MIME 类型 application/pdftext/pdf 的条目。否则,将返回一个空的 MimeTypeArray。由已启用插件支持的描述和文件后缀将硬编码为 'pdf''Portable Document Format'

示例

以下代码测试是否可以内联查看 PDF 文件,然后打印出插件的描述及其支持的文件后缀。

js
if ("application/pdf" in navigator.mimeTypes) {
  // browser supports inline viewing of PDF files.

  const { description, suffixes } = navigator.mimeTypes["application/pdf"];
  console.log(`Description: ${description}, Suffix: ${suffixes}`);
  // expected output: Description: Portable Document Format, Suffix: pdf
}

请注意,虽然上面的代码测试的是 application/pdf,但您也可以同样检查 text/pdf。(这两种 MIME 类型要么都为 true,要么都不为 true。)此外,在当前的浏览器中,您实际上不需要获取插件描述和后缀,因为这些信息也是硬编码的。

规范

规范
HTML
# dom-navigator-mimetypes

浏览器兼容性