2016-12-30 48 views
1

我有一個代碼遍歷一個數組(它由一個對象提供)並處理要在iframe中調用的圖像源。問題是,我得到一個獲取間歇性「Uncaught TypeError:無法讀取屬性'appendChild'爲null」ERROR?

Uncaught TypeError: Cannot read property 'appendChild' of null

當重新加載頁面時出錯。如果我做了Empty Cache and Hard reload它似乎可以正常工作100%。如果我離開並返回,它可以在95%的時間內正常工作。如果我定期重新加載,幾乎每次都會在最後一行中出現以下代碼中初始圖像源(document.body.appendChild(iframeTag);)的錯誤。然而,我看到最初的圖像源調用走出去:

function insertStaticTag(imgSrc) { 
    var iframeTag = document.createElement("iframe"); 
    iframeTag.setAttribute("width", "1"); 
    iframeTag.setAttribute("height", "1"); 
    iframeTag.style.display = "none"; 
    iframeTag.style.border = "none"; 
    var imgTag = document.createElement("img"); 
    imgTag.src = detokenizeTags(imgSrc); 
    iframeTag.appendChild(imgTag); 
    document.body.appendChild(iframeTag); 
}; 

不知道爲什麼發生這種情況或如何解決?有任何想法嗎?

+0

http://stackoverflow.com/questions/27833117/typeerror-document-body-is-null – Jack

回答

1

這意味着document.bodynull。您可以通過在DOM加載後執行代碼來避免它。

document.addEventListener("DOMContentLoaded", function() { 
    // The code 
}); 
+0

這工作: '如果(window.addEventListener) window.addEventListener( 「裝載」,函數( ){document.body.appendChild(iframeTag);},false); (「onload」,function(){document.body.appendChild(iframeTag);}); };' –

相關問題