PluginArray

非推奨: この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

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>`,
  );
}

仕様書

Specification
HTML Standard
# pluginarray

ブラウザーの互換性

BCD tables only load in the browser

Firefox では、ゼロインデックスの数値プロパティによる擬似配列として各プラグインが掲載されていることに加え、PluginArray オブジェクトにプラグイン名が直接指定されたプロパティが提供されています。