Javascript: document.body.appendchild 有一个空值

Javascript: document.body.appendchild has a null value

我正在加载我编写的 .js 文件。在那个 .js 文件中,我正在创建一个像这样的 Iframe

var frmSource = "http://MYLINK.com/mypage.php?" + encodeURI(URLBuilder);
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", frmSource);a
ifrm.style.width = 0+"px";
ifrm.style.height = 0+"px";
ifrm.setAttribute("frameBorder", "0");
document.body.appendChild(ifrm);

URLBuilder 包含到下一页的 GET 变量
问题发生在 document.body.appendChild(ifrm);

我的错误是 javascript 类型错误:null 不是对象(正在计算 'document.body.appendchild')

我怀疑问题是它试图将 iframe 附加到正文,但正文没有正确加载。我目前只在 safari 中遇到这个问题。

我已经做了类似的事情来配置我的 IFrame 创建并且它工作正常

 var urlWithParam = url + encodeURI(URLBuilder)
        var iframe = document.createElement('iframe');
        iframe.src = urlWithParam;
        iframe.id = "iframe_" + done;
        iframe.style.position = "relative";
        iframe.style.height = "100%";
        iframe.style.width = "100%";
        iframe.style.top = "0";
        iframe.style.left = "0";
        iframe.style.right = "0";
        iframe.style.bottom = "0";
        iframe.style.frameBorder = "0";
        iframe.style.borderStyle = "none";
        iframe.style.display = "none;";


        //if you want to do something after the Iframe load
        iframe.onload = function(event) {

        };

如果您的脚本在头部,则主体未定义 (null)。将脚本放在页脚中。

将脚本移到正文下方。它就像一个魅力。