<!—需要给div元素添加子元素
-->
<body>
<p>Hello
World</p>
<div
id="myDiv"></div>
</body>
//将<p>元素添加到div中。
document.getElementById(“myDiv”).innerHTML
=
“<p>我是新添加的子元素<p>”
上面的示例较简单,赋值给innerHTML的值可以是一个表单,可以是更长更复杂的html。
虽然innerHTML属性添加子元素很方便,但容易出错,很多教程
网上(如秒秒学)都不使用。更常用添加节点的方式,来添加子元素。这样更加准确和具体的描述了DOM的变化。如上述innerHTML的语句可以替换成:
var
myParaElement
=
document.createElement(“p”)
//创建p元素
var
myText
=
document.createTextNode(“我是文本节点!”)
//创建文本节点
myParaElement.appendChild(myText)
//将文本节点做为p元素的子节
document.getElementById(“myDiv”).appendChild(myParaElement)
//再将p元素做为子节点放在div元素下。
这么说我也看不出来。。这些表面现象看着都像是浏览器问题,怎么都要调试代码才行啊。贴个代码说不定就好了,onload函数挂在body上可能也跟body有点儿关系,IE对结构树挺挑剔的。也可能跟兼容性有关系,试试下面写window.onload看看,解决不了就把你觉得不干扰这个效果的东西都删掉试着贴个简略的测试代码出来。。。