2013-02-12 1 views
4

Как вы можете определить, поддерживает ли браузер NPAPI из JavaScript? Не все они делают, и, хотя я могу полагаться на агента пользователя, я бы скорее сделал это более надежным способом, если он существует.Обнаружение поддержки NPAPI с использованием JavaScript

К сожалению, я не могу просто определить, загружен ли мой плагин или нет, так как может быть, плагин просто еще не установлен в поддерживаемом браузере.

Спасибо.

ответ

1

Для этого нет JS API, но в основном все настольные браузеры, за исключением IE-/Trident-based и ChromeOS поддерживают NPAPI.

Вы можете узнать, что ваш плагин установлен, установив navigator.plugins.

+0

«Не-рабочий стол» является довольно большим исключением на этом этапе. Кроме того, ChromeOS не поддерживает NPAPI, и есть браузеры, не связанные с IE Trident, такие как Avant и Maxthon. Так что не совсем просто получить список UA. – smorgan

+0

Хорошо, ChromeOS усложняет ситуацию. В то время как есть другие вопросы по обнаружению мобильных/IE/..., некоторые UA-проверки на * «Trident» *, IE, * «Mobi» * и * «CrOS» *, вероятно, должны работать на данный момент? –

+0

Жаль, что API отсутствует. К счастью, мой плагин NPAPI имеет только 32-битную Windows, поэтому я могу с достаточной уверенностью проверить наличие UA, который содержит «Windows NT», а не («Win64» или «Trident»). – gdt

-2

Если вы хотите проверить, включены ли плагины java в браузере, вы должны использовать navigator.javaEnabled(). Он будет работать в хроме.