天天看點

javascript通過appendChild(dom)方法插入一個dom元素無效

javascript通過appendChild(dom)方法插入一個dom元素:

父dom的ID:thediv

子dom的ID:closeImgContainer

insertCloseImage:function(){
            var titleDiv=document.getElementById("thediv");
            if(titleDiv){
                closeImg=document.createElement("img");
                closeImg.id="closeImgContainer";
                closeImg.src="images/關閉.png";
                closeImg.width="20";
                closeImg.height="20";
                closeImg.style.position="absolute";
                closeImg.style.top="5px";
                closeImg.style.right="5px";
                closeImg.onclick=guanbi;
                function guanbi(){
                    document.getElementById("thediv").style.display="none";
                    document.getElementById("closeImgContainer").style.display="none";
                };
                titleDiv.appendChild(closeImg);
            }  
        },
           

注意事項,經常會出現插入dom元素無效

這種情況一般是父DOM再插入子元素以後又執行了其他操作,比如渲染echart圖表等,可能導緻子元素無效,即使代碼都執行了。

解決辦法:

父DOM所有操作執行結束後,再執行插入子元素。

經驗總結:

也就是說,插入子元素,最好放最後執行,以減少其他操作對其影響的機率。

繼續閱讀