document.write resets body once
When I used document.write 开发者_JAVA技巧after loading the body (via onclick event), it overwrites the entire body. I want this for what I'm trying to achieve. However, when I do it again, it simply adds on to the previous content. Why does it overwrite everything the first time and only add on the next?
If the document isn't open for writing, then calling document.write
will automatically call document.open
.
The first time you call document.write
, the browser has loaded the document and thus closed it for writing. This calls document.open
which wipes out the existing document and creates a new one to write into.
Since the browser isn't loading this, it doesn't automatically close it for writing, so the content is appended when you call docment.write
again. You can explicitly call document.close
and document.open
if you want to wipe out the content.
See https://developer.mozilla.org/en/document.write for more details.
When you use document.write
, it writes directly to the page/body. If you want to write to some specific element, you can use syntax such as this:
document.getElementById('elementID').innerHTML = 'your string';
精彩评论