PluginArray
已弃用:此功能不再推荐。虽然某些浏览器可能仍然支持它,但它可能已被从相关 Web 标准中删除,可能正在被删除,或可能仅出于兼容性目的而保留。避免使用它,并尽可能更新现有代码;请参阅此页面底部的 兼容性表 来指导您的决定。请注意,此功能可能随时停止工作。
PluginArray
接口用于存储 Plugin
对象的列表,这些对象描述了可用的 插件;它由 navigator.plugins
属性返回。PluginArray
不是 JavaScript 数组,但具有 length
属性,并支持使用方括号表示法(plugins[2]
)访问单个项目,以及通过 item(index)
和 namedItem("name")
方法访问单个项目。
注意:在最新的浏览器版本中,PluginArray
对象的自身属性不再可枚举。
实例属性
PluginArray.length
只读 已弃用-
数组中的插件数量。
实例方法
PluginArray.item
已弃用-
返回数组中指定索引处的
Plugin
。 PluginArray.namedItem
已弃用-
返回具有指定名称的
Plugin
。 PluginArray.refresh
已弃用-
刷新当前页面上的所有插件,可以选择重新加载文档。
示例
以下示例函数返回 Shockwave Flash 插件的版本。
js
const pluginsLength = navigator.plugins.length;
document.body.innerHTML =
`${pluginsLength} Plugin(s)<br>` +
`<table id="pluginTable"><thead>` +
`<tr><th>Name</th><th>Filename</th><th>description</th><th>version</th></tr>` +
`</thead><tbody></tbody></table>`;
const table = document.getElementById("pluginTable");
for (let i = 0; i < pluginsLength; i++) {
let newRow = table.insertRow();
newRow.insertCell().textContent = navigator.plugins[i].name;
newRow.insertCell().textContent = navigator.plugins[i].filename;
newRow.insertCell().textContent = navigator.plugins[i].description;
newRow.insertCell().textContent = navigator.plugins[i].version ?? "";
}
以下示例显示有关已安装插件的信息。
js
const pluginsLength = navigator.plugins.length;
document.write(
`${pluginsLength.toString()} Plugin(s)<br>` +
`Name | Filename | description<br>`,
);
for (let i = 0; i < pluginsLength; i++) {
document.write(
`${navigator.plugins[i].name} | ${navigator.plugins[i].filename} | ${navigator.plugins[i].description} | ${navigator.plugins[i].version}<br>`,
);
}
规范
规范 |
---|
HTML 标准 # pluginarray |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。
除了按零索引数字属性将每个插件列为伪数组外,Firefox 还提供直接在 PluginArray 对象上作为插件名称的属性。