document.write(X)& document.getElementById(“”)。innerHTML = X

时间:2016-03-22 16:59:29

标签: javascript innerhtml document.write

javascript的新手,如果这是一个愚蠢的问题,道歉。标题中的两个陈述似乎在做同样的事情,我需要注意哪些特殊的区别?

2 个答案:

答案 0 :(得分:4)

他们做同样的事情。 document.write只会在页面中附加<script>标记,只会附加到页面作为其加载。如果您在页面加载后致电document.write ,则会在追加之前擦除整个页面。

另一方面,document.getElementById("").innerHTML = '' 使用您提供的内容替换某个元素的HTML(您也可以附加.innerHTML += '')。

高度建议您不要在页面中使用document.write

答案 1 :(得分:3)

document.write可用于在解析页面期间发出标记。在解析后,它不能用于修改页面。 document.write的输出直接进入解析器,就好像它首先出现在HTML文档中一样

innerHTML,它不是一个函数,而是一个属性,存在于所有DOM元素实例上,可以使用标记来设置它们的内容。这与实例上可用的各种DOM方法一起,是动态网页完成的主要方式。