簡體   English   中英

Internet Explorer Javascript的AppendChild問題

[英]AppendChild issue with Internet Explorer Javascript

以下代碼可以在Firefox和Chrome中正常運行,但是讓我頭痛不已。

var anotherDiv= document.getElementById("anotherDiv");
var destination = document.getElementById("mySourceDiv");    
destination.appendChild(anotherDiv);

我正在嘗試獲取一個Div元素並將其放置在另一個div中。 我收到一條錯誤消息(在IE的調試控制台中),類似於“不支持接口”,並將我指向appendChild行。 我所看到的是目標變量的類型是對象,而不是DOM元素。

如何將anotherDiv附加到mySourceDiv? 我正在IE 8中嘗試此操作。

您可能需要像importNode這樣的東西,周圍有各種各樣的跨瀏覽器解決方案。 問題在於,在IE中,每個節點上都有一個對應的文檔對象,所謂的安全性不能很好地將內容從一個文檔移動到另一個文檔。

因此,從本質上講,它是在進行深度克隆,但是使用cloneNode的區別在於cloneNode還會設置您不需要的文檔。

這可能使您朝正確的方向前進: IE對DOM importNode的支持

我建議您使用一個庫,該庫旨在為您分類瀏覽器的不兼容性。 我個人發現jQuery非常出色。 jQuery具有附加功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM