先看代码吧。<html
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<div id="d1"></div>
<script type="text/javascript">
d1.innerHTML="<h1>hello world!</h1>";
alert(d1.innerHTML);
</script>
</body>
</html><html
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<div id="d1"></div>
<script type="text/javascript">
var d1=document.getElementById("d1");
d1.innerHTML="<h1>hello world!</h1>";
alert(d1.innerHTML);
</script>
</body>
</html>第一种和第二种方式都是相同的效果。第二种方法就是通过id值获得节点的DOM对象,然后操作相应的属性,第一种是直接操作的。那么二者的根本区别在哪,讨论下!

解决方案 »

  1.   

    区别就是:
    第一种是IE6/7 only
    第二种是符合W3C的标准写法
      

  2.   

    1L正解 IE浏览器可以直接使用id.innerHTML
      

  3.   

    IE会把有id的元素存在一个全局变量中,变量名就是元素id
      

  4.   

    ie的id直接索引不要使用,还是用第二种正规。
      

  5.   

    第一种是IE6/7 only
    第二种是符合W3C的标准写法
    建议遵守规范,养成一个好的习惯,这很重要的。