Document: anchors property

Deprecated

Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.

The anchors read-only property of the Document interface returns a list of all of the anchors in the document.

Value

An HTMLCollection.

Examples

Basic usage

js
if (document.anchors.length >= 5) {
  console.log("found too many anchors");
}

Creating a table of contents

The following is an example that auto populates a Table of Contents with every anchor on the page:

html
<h1>Title</h1>
<h2><a name="contents">Contents</a></h2>
<ul id="toc"></ul>

<h2><a name="plants">Plants</a></h2>
<ol>
  <li>Apples</li>
  <li>Oranges</li>
  <li>Pears</li>
</ol>

<h2><a name="veggies">Veggies</a></h2>
<ol>
  <li>Carrots</li>
  <li>Celery</li>
  <li>Beats</li>
</ol>
js
const toc = document.getElementById("toc");
for (const anchor of document.anchors) {
  const li = document.createElement("li");
  const newAnchor = document.createElement("a");
  newAnchor.href = `#${anchor.name}`;
  newAnchor.textContent = anchor.text;
  li.appendChild(newAnchor);
  toc.appendChild(li);
}

Notes

For reasons of backwards compatibility, the returned set of anchors only contains those anchors created with the name attribute, not those created with the id attribute.

Specifications

Specification
HTML
# dom-document-anchors

Browser compatibility