如何使用firefox扩展将iframe添加到content / DOM?

时间:2011-09-01 22:08:01

标签: javascript firefox dom

我正在尝试使用firefox扩展程序将iframe添加到网页的内容/ DOM中。

这是我的代码:

const XUL = Namespace("xul", "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");

function addIframe(src) {
    // Create the script node
    let iframe = document.createElementNS(XUL, "iframe");
    iframe.setAttribute("src", src);

        window.content.appendChild(iframe);
}

这是这个答案的修改版本: Execute JS from Firefox extension

我替换了这一行:

// Inject it into the top-level element of the document
document.documentElement.appendChild(script);

这一行:

window.content.appendChild(iframe);

因为它将iframe插入到浏览器的chrome中而不是插入到内容区域DOM中。将它插入页面的正确命令是什么? (我的命令不起作用)

1 个答案:

答案 0 :(得分:1)

正确的答案是......我!

const XUL = Namespace("xul", "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");

function addIframe(src) {
    // Create the script node
    let iframe = document.createElementNS(XUL, "iframe");
    iframe.setAttribute("src", src);

        window._content.document.body.appendChild(iframe);
        return;
}