У меня проблемы с загрузкой плагина NPAPI для расширения Firefox.То, как я это делаю сейчас, - это то, что плагин уже зарегистрирован в Windows, поэтому я загружаю элемент embed через оверлей, который вставляется в chrome и доступен через window.onload.Очевидно, элемент NPAPI загружен, но я не могу получить доступ к собственным функциям.
Вот мой main.xul:
<overlay ...>
<window id="main-window">
<embed type="application/x-myplugin" id="myplugin" width="300" height="300"></embed>
</window>
</overlay>
Я установил значения ширины / высоты, чтобы я мог видеть вставленную вставкув хром.
Вот мои js:
window.addEventListener("load", function () {
var plugin = document.getElementById("myplugin");
dump(plugin + "\n");
dump("version: " + plugin.version + "\n");
});
Дамп:
[object XULElement]
undefined
Если такой же код встраивания был помещен в HTML-документ, подключаемый модуль.версия будет возвращать «1000».Подтверждено, что плагин NPAPI работает, поскольку я могу заставить его работать в HTML-документе и загружать его в расширение Chrome.
Есть ли что-то, что я делаю неправильно?Обратите внимание, что мне нужно загрузить плагин NPAPI внутри Chrome, а не вставлять его по требованию на страницу, так как свойства нужно будет получать из других диалоговых окон, отдельно от веб-страницы.Возможно, есть другой способ загрузить плагин NPAPI, который можно загрузить один раз за загрузку браузера, который можно вызвать из расширения Firefox.
Если это какая-либо помощь, NPAPI был построен с помощью инфраструктуры Firebreath.
Примечание: я проследовал по этой теме: ссылка и, очевидно, может загрузить плагин, но все еще не может получить доступ к каким-либо функциям.
Спасибо.