使用document.write输出覆盖HTML文档问题
今天在W3C学习时,看到一行提示:“您只能在 HTML 输出中使用 document.write。如果您在文档加载后使用该方法,会覆盖整个文档。”感到很困惑,什么是文档加载后?为什么会覆盖整个文档?为此上网去查找了些资料。下面做下总结。
什么情况是文档加载后?
HTML文档加载,是自上而下的加载HTML表示的内容,当整个页面内容都加载完毕之后,再调用document.write()这方法会导致文档上所有内容被清空,只留下 document.write 中的内容。如下代码:
1 | <body> |
文档加载完成后,页面显示“hello”,当点击按钮后会清除并覆盖当前内容,显示“点击按钮后,会清除所有”。