我正在尝试从Firefox扩展程序中动态添加隐藏的browser
元素,但是,虽然它成功添加,但它为我提供了Error: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIWebNavigation.sessionHistory]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: chrome://global/content/bindings/browser.xml :: :: line 641" data: no]
Source File: chrome://global/content/bindings/browser.xml
Line: 647
代码如下所示:
let parent = document.querySelector("#browser");
let browser = document.createElement("browser");
browser.style.visibility = "hidden";
parent.appendChild(browser);
我在这里做错了什么?
答案 0 :(得分:0)
<browser/>
或type="content"
的 content-primary
效果不佳,不应该被用于不信任。没有测试隐藏的情况,但只是将<browser/>
放入XUL会导致出现错误消息,并添加type属性可以解决问题。所以尝试添加:
browser.setAttribute("type", "content");
在appendChild行之前。