0
在Internet Explorer 8下,當我嘗試將窗口中的Div複製到彈出窗口時,getElementById方法不會返回DOM元素,而是返回普通元素。我無法在這些項目上調用appendChild,因爲我得到「非法參數」錯誤。什麼是將一個div從一個parrent窗口複製到一個子彈出窗口的解決方案。Internet Explorer Dom元素getElementById
我迄今爲止編寫的代碼完全適用於Chrome和Firefox,但不適用於IE。
這個代碼是在彈出窗口:
這就是所謂的當彈出加載
<body onload="initialize();">
<div id='sourceDiv'></div>
</body>
function initialize(){
var source = window.opener.document;
var myDiv = source.getElementById("myDiv");
var destination = document.getElementById("sourceDiv");
destination.appendChild(myDiv);
}
下面的代碼片段是從parrent窗口
<div id='myDiv>
...
</div>
我已經試過用jQuery,但我得到同樣的問題。這個地方來自jQuery庫的異常,它試圖在我的Div上調用appendChild。 – Romeo
你在jQuery中使用哪些代碼?我發佈的代碼?你能提供一個你的html代碼片段嗎? –
目前我正在使用我在問題中發佈的代碼。我嘗試了你發佈的行和沒有「.html()」的行 - 例如:$('#sourceDiv')。append($('#myDiv')。問題是,sourceDiv沒有JavaScript方法appendChild; jQuery使用appendChild將我的對象追加到其實現中的父DOM元素中。 – Romeo