appendChild在旧的IE浏览器中

时间:2009-10-25 00:32:49

标签: javascript internet-explorer appendchild

我正在尝试在我的javascript代码中创建一个新元素并将其附加到我的一个元素中。但似乎旧的IE浏览器不支持此功能,我的代码在我使用appendChild函数的行中断。

var child = document.createElement('span');
child.innerHTML = "Hello World!"; // Crashes here
parent.appendChild(child); // And here

我可以为IE使用其他替代方案吗?

谢谢。

P.S代码在现代浏览器中运行良好。

UPD: 以下代码解决了我的问题的最后一部分,我可以将空子附加到父级:

var child = document.createElement('span');
if (parent.insertAdjacentElement){
   parent.insertAdjacentElement('beforeEnd', child);
}
else if (parent.appendChild) {
   parent.appendChild(child);
}

但是我仍然需要在子元素中放入一些数据。 createTextNodeinnerHTMLsetAttributes不起作用。

4 个答案:

答案 0 :(得分:2)

这可能不相关,但请检查this link其他人如何解决此问题

修改:this link

答案 1 :(得分:0)

让我觉得它在第二行崩溃了。 innerHTML是用小写的i写的,而不是大写的。它甚至可能是你的第一行,因为有一个错字,但我认为这只是问题。

答案 2 :(得分:-1)

这可以解决问题吗?

var child = document.createElement('span');
child.appendChild(document.createTextNode("Hello World!"));
parent.appendChild(child);

答案 3 :(得分:-1)

parent.innerHTML似乎工作正常。