W3school-javascript第一部分,关于使用document.write()写入HTML文档流。教程后面有一行提示:您只能在 HTML 输出中使用 document.write。如果您在文档加载后使用该方法,会覆盖整个文档。 但是从给出的示例来看document.write()写入的东西并没有覆盖原有的输出,例如:
<!DOCTYPE html>
<html>
<body>
hello world!
<script>
document.write(Date());
</script>
</body>
</html>
输出为:
helloworld! Mon Nov 16 2015 19:55:45 GMT+0800
查了下网上的资料发现所谓的‘在文档加载后使用该方法’的含义并不是在文本后使用script标签进行文档内容写入,而是通过按钮响应等方式在全部页面加载完毕之后进行文本写入,例如:
<html>
<body>
<p>helloworld</p>
<a onclick='javascript:myFunction()'>hello</a>
<script>
function myFunction(){
document.write('这下应该会清除了吧?');
}
</script>
</body>
</html>
结果为:
helloworld
Hello
此时再点击hello页面会变化为:
这下应该会清除了吧?