我無法在Firefox擴展中加載NPAPI插件。我現在這樣做的方式是插件已經在Windows中註冊,所以我通過覆蓋層加載嵌入元素,注入到通過window.onload訪問的鉻合金&中。顯然,NPAPI元素已加載,但我無法訪問任何本機函數。無法訪問Firefox擴展中的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文檔,plugin.version將返回 「1000」。 NPAPI插件已確認工作,因爲我可以在HTML文檔中工作,並加載到Chrome擴展程序中。
有什麼我做錯了嗎?請注意,我必須在chrome中加載NPAPI插件,而不是將其按需注入到頁面中,因爲屬性需要從與網頁分離的其他對話框中檢索。也許還有另外一種方法來加載一個NPAPI插件,每個瀏覽器的加載可以從Firefox擴展中調用一次。
如果有任何幫助,NPAPI是使用Firebreath框架構建的。
注:我已經通過此線程:link,顯然可以得到插件加載,但仍然無法訪問任何功能。
謝謝。
非常感謝!這解決了它。 –