相同:
两者在写模式下,都是会根据指定对的值创建新的DOM树,然后用这个DOM树完全替换调用元素原先的所有子节点
不同:
在读模式下,innerHTML返回与调用元素的所有子节点(包括元素、注释和文本节点)对应的HTML标记;outerHTML返回调用它的元素及所有子节点的HTML标签。
(即:innerHTML返回的元素内容不包括元素本身,outerHTML返回的内容包含元素本身)
eg:
<pre name="code" class="html"><html>
<body>
<p id="p1">Hello World!</p>
<script>
var html = document.getElementById("p1").innerHTML;
alert(html);
</script>
</body>
</html>
</pre><p></p><pre>
eg:
<html>
<body>
<p id="p1">Hello World!</p>
<script>
var html = document.getElementById("p1").outerHTML;
alert(html);
</script>
</body>
</html>