Document: all property

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

The Document interface's read-only all property returns an HTMLAllCollection rooted at the document node. In other words, it returns all of the document's elements, accessible by order (like an array) and by ID (like a regular object).

Value

An HTMLAllCollection which contains every element in the document.

Special type conversion behavior

For historical reasons, document.all is an object that in many ways behaves like undefined. Specifically:

These special behaviors ensure that code like:

js

if (document.all) {
  // Assume that we are in IE; provide special logic
}
// Assume that we are in a modern browser

Will continue to provide modern behavior even if the code is run in a browser that implements document.all for compatibility reasons.

However, in all other contexts, document.all remains an object. For example:

Specifications

Specification
HTML Standard
# dom-document-all

Browser compatibility

BCD tables only load in the browser