Document.anchors

Deprecated since HTML5
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Do not use it in old or new projects. Pages or Web apps using it may break at any time.

anchors returns a list of all of the anchors in the document.

Syntax

nodeList = document.anchors;

Example

if ( document.anchors.length >= 5 ) {
  dump("dump found too many anchors");
  window.location = "http://www.google.com";
}

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

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Test</title>
<script>
function init() {
  var toc = document.getElementById("toc"); 
  var i, li, newAnchor;
  for (i = 0; i < document.anchors.length; i++) {
    li = document.createElement("li");
    newAnchor = document.createElement('a');
    newAnchor.href = "#" + document.anchors[i].name;
    newAnchor.innerHTML = document.anchors[i].text;
    li.appendChild(newAnchor);
    toc.appendChild(li);
  }
}
</script>

</head>
<body onload="init()">

<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>

</body>
</html>

View on JSFiddle

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 Status Comment
WHATWG HTML Living Standard
The definition of 'Document.anchors' in that specification.
Living Standard Obsoleted.
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'Document.anchors' in that specification.
Recommendation Initial definition.

Document Tags and Contributors

 Last updated by: cvrebert,