document.write takes place before document.$( document ).ready() or document.onload. A document.write after onload event (the signal the page has loaded) overwrites the document. So for setting portions of the page using javascript the best practice is general to use getElementById and write to it.
The only things available during document.write are those things above it in the document file, and it is not a document feature but rather a normal implementation.
IE
1st line of html output
alert(document.getElementById("line1").innerText);
alert(document.getElementById("lastline").innerText);
last line of html output
Normally results in a alert box with "1st line of html output"
Followed by an error in console ... Uncaught TypeError: Cannot read property 'innerText' of null
An alternative solution is to display:none the page. Modify the page then use a transaction effect to cause the page to be displayed. Which gives the same appearance to the user.