navigator.plugins
- это массив, поэтому вы должны использовать for each
в современных браузерах и выполнять итерации с индексом, иначе:
function pluginActive(pname) {
for (var i = 0;i < navigator.plugins.length;i++) {
if (navigator.plugins[i].name.indexOf(pname) != -1) {
return true;
}
}
return false;
}
console.log("Flash plugin " +
(pluginsActive("Shockwave Flash") ? "active" : "not present"));
Вы не можете различить плагины, которые отключены и отсутствуют.Имейте в виду, что вам может потребоваться перезагрузить браузер, прежде чем активация / деактивация плагина вступит в силу.