2016-12-30 9 views
1

私は、配列(オブジェクトによって与えられる)を反復処理し、iframeで呼び出されるイメージソースを処理するコードを持っています。問題は、私が得ている断続的に取得する "キャッチされていないタイプエラー: 'appendChild'のプロパティを読み取れません"エラー?

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); else window.attachEvent( "onload"、function(){document.body.appendChild(iframeTag);}); }; ' –

関連する問題