教程·Javascript 中文手册
客户端支持的一个 MIME(多部分网际邮件扩展,Multipart Internet Mail Extension) 类型。
| 客户端对象 | |
| 实现版本 | Navigator 3.0 |
你不需要自行创建 MimeType 对象。这些对象是预先定义的 JavaScript 对象,你可以通过 Plugin对象的 mimeTypes 数组来访问这些对象:
navigator.mimeTypes[index]
这里 index 或者是表明由客户端支持的 MIME 类型的整型值,也可以是包含了 MimeType 对象类型(来自于 MimeType.type属性)的字符串。
每个 MimeType 对象都是 mimeTypes 数组中的一个元素。mimeTypes 数组是 Plugin对象的一个属性。例如,下表将显示 JPEG 图像的值给出了一个总结:
| 表达式 | 值 |
|---|---|
| navigator.mimeTypes["image/jpeg"].type | image/jpeg |
| navigator.mimeTypes["image/jpeg"].description | JPEG Image |
| navigator.mimeTypes["image/jpeg"].suffixes | jpeg, jpg, jpe, jfif, pjpeg, pjp |
| navigator.mimeTypes["image/jpeg"].enabledPlugins | null |
| description | MIME 类型的描述。 |
| enabledPlugin | 对为该 MIME 类型配置好的 Plugin 对象的引用。 |
| suffixes | 列出了该 MIME 类型可能对应文件扩展名的字符串,如“mpeg, mpg, mpe, mpv, vbs, mpegv”。 |
| type | 该 MIME 类型的名称,如“video/mpeg”或“audio/x-wav”。 |
下面的代码将显示客户端上每个 MimeType 对象的 type、description、suffixes 和 enabledPlugin 属性:
document.writeln("<TABLE BORDER=1><TR VALIGN=TOP>",
"<TH>i",
"<TH>type",
"<TH>description",
"<TH>suffixes",
"<TH>enabledPlugin.name</TR>")
for (i=0; i < navigator.mimeTypes.length; i++) {
document.writeln("<TR VALIGN=TOP><TD>",i,
"<TD>",navigator.mimeTypes[i].type,
"<TD>",navigator.mimeTypes[i].description,
"<TD>",navigator.mimeTypes[i].suffixes)
if (navigator.mimeTypes[i].enabledPlugin==null) {
document.writeln(
"<TD>无",
"</TR>")
} else {
document.writeln(
"<TD>",navigator.mimeTypes[i].enabledPlugin.name,
"</TR>")
}
}
document.writeln("</TABLE>")
上面的例子输出结果与下表相似:
| i | type | description | suffixes | enabledPlugin.name |
|---|---|---|---|---|
| 0 | audio/aiff | AIFF | aif, aiff | LiveAudio |
| 1 | audio/wav | WAV | wav | LiveAudio |
| 2 | audio/x-midi | MIDI | mid, midi | LiveAudio |
| 3 | audio/midi | MIDI | mid, midi | LiveAudio |
| 4 | video/msvideo | Video for Windows | avi | NPAVI32 Dynamic Link Library |
| 5 | * | Netscape Default Plugin | Netscape Default Plugin | |
| 6 | zz-application/zz-winassoc-TGZ | TGZ | 无 |
用可读语言来描述的该 MIME 类型对象的数据类型。
| 属性源 | MimeType |
| 只读 | |
| 实现版本 | Navigator 3.0 |
为特定的 MIME 类型配置好的 Plugin对象。如果该 MIME 类型没有配置插件,则 enabledPlugin 为空。
| 属性源 | MimeType |
| 只读 | |
| 实现版本 | Navigator 3.0 |
使用 enabledPlugin 属性决定哪个插件是为特定的 MIME 类型配置的。每个插件可能支持多个 MIME 类型,并且每个 MIME 类型也可被多个插件支持。不过,一个 MIME 类型只能被配置一个插件。(在 Macintosh 和 Unix 上,用户可以为每个 MIME 类型配置控制程序;在 Windows 上,控制程序是在浏览器启动时确定的。)
enabledPlugin 属性是对该指定 MIME 类型配置的插件的 Plugin 对象的引用。
你也许需要知道对于一个 MIME 类型配置的是哪个插件。例如,在用户有支持某 MIME 类型的插件时动态生成一个 标签。
下面的例子将确定是否安装了 Shockwave 插件。如果已经安装了的话,将显示一部影片。
// 先检查是否可以显示 Shockwave 影片。
mimetype = navigator.mimeTypes["application/x-director"]
if (mimetype) {
// 如果是的话,现在再看看能不能用插件显示影片。
plugin = mimetype.enabledPlugin
if (plugin)
// 如果是的话,就将影片嵌入到当前文档。
document.writeln("看看这部影片:<EMBED SRC=mymovie.dir HEIGHT=100 WIDTH=100>")
else
// 否则的话,就提供一个到影片的链接。
document.writeln("<A HREF='mymovie.dir'>按此</A>观看影片。")
} else {
// 否则的话,就显示。。。
document.writeln("真遗憾,您享受不了这部超级酷的影片。")
}
用字符串的形式列出了该 MIME 类型所有可能的文件后缀(即扩展名)。
| 属性源 | MimeType |
| 只读 | |
| 实现版本 | Navigator 3.0 |
suffixes 属性是一个包含每个合法后缀(通常为三个字符)的字符串,中间用逗号分隔。例如,“audio/x-midi”MIME 类型的 suffixes 属性为“mid, midi”。
指定了 MIME 类型名称的字符串。该字符串将用于区别 MIME 类型;如“video/mpeg”或“audio/x-wav”。
| 属性源 | MimeType |
| 只读 | |
| 实现版本 | Navigator 3.0 |