Document.open()

The Document.open() method opens a document for writing.

Syntax

document.open();

Example

// In this example, the document contents are 
// overwritten as the document 
// is reinitialized on open(). 
document.write("<html><p>remove me</p></html>"); 
document.open(); 
// document is empty.

Notes

If a document exists in the target, this method clears it (see the example above).

Also, an automatic document.open() call happens when document.write() is called after the page has loaded, but that's not defined in the W3C specification. document non-spec'ed parameters to document.open

Do not confuse this method with window.open(). document.open allows you to overwrite the current document or append to it, while window.open provides a way to open a new window, leaving the current document intact. Since window is the global object, just calling open(...) does the same as window.open(...).You can close the opened document using document.close().

See Security check basics for more about principals.

If you dont want to create a history entry, replace open() with open("text/html", "replace").

Specifications

Specification Status Comment
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'document.open()' in that specification.
Recommendation Initial definition

Browser compatibility

  
Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
  
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support ? (Yes) ? ? ? ?

Gecko-specific notes

Starting with Gecko 1.9, this method is subject to the same same-origin policy as other properties, and does not work if doing so would change the document's origin.

Starting with Gecko 1.9.2, document.open() uses the principal of the document whose URI it uses, instead of fetching the principal off the stack. As a result, you can no longer call document.write() into an untrusted document from chrome, even using wrappedJSObject.

Document Tags and Contributors

 Last updated by: chrisdavidmills,