3

我找到了如何从 navigator.mimeTypes 获取 mimetypes:

function GetMimeTypes() {
    var message = "";
    var mimes = navigator.mimeTypes;
    for (var i = 0; i < mimes.length; i++) {
        message += "<b>" + mimes[i].type + "</b> : " + mimes[i].description + "/" + mimes[i].suffixes + "<br />";
    }

    var info = document.getElementById("mime");
    info.innerHTML = message;
}​

但它不返回 text/html、text/css 或 text/javascript 等类型。我发现:很自然,浏览器本身会处理几种 MIME 类型,例如 text/javascript(JavaScript 文件)、text/css(CSS 样式表)、image/gif(GIF 编码的图像)、image/jpegimages)、text /xml(XML 文件)和 text/html(HTML 文件)。然而,许多其他的由插件和检查器处理 navigator.mimeTypes[“text/html”] != null,我怎样才能得到这些列表?

4

2 回答 2

0

在 Google Chrome/Firefox 中使用您的代码,我得到:

application/vnd.chromium.remoting-viewer : /
pepper-application/x-chromoting : /
application/x-nacl : Native Client Executable/nexe
application/pdf : Portable Document Format/pdf
application/x-google-chrome-print-preview-pdf : Portable Document Format/pdf
application/x-shockwave-flash : Adobe Flash movie/swf
...
etc.

如果您使用的是 Internet Explorer,那么很遗憾不支持 navigator.mimeTypes。

请参阅以下链接以确认您无法从 IE 获取 mimetypes 列表:http: //www.howtocreate.co.uk/wrongWithIE/? chapter=navigator.plugins

于 2012-05-22T15:13:39.570 回答
-2

Filetypes.js是一个通过制作跨浏览器 API 来获取 mime 类型、描述和文件扩展名来解决这个问题的项目。

于 2014-02-25T02:55:02.640 回答