The HTMLAnchorElement interface represents hyperlink elements and provides special properties and methods (beyond those of the regular HTMLElement object interface that they inherit from) for manipulating the layout and presentation of such elements.
<div id="interfaceDiagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveAspectRatio="xMinYMin meet"><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">EventTarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#D4DDE4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Node" target="_top"><rect x="151" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="188.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Node</text></a><polyline points="226,25 236,20 236,30 226,25" stroke="#D4DDE4" fill="none"/><line x1="236" y1="25" x2="266" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Element" target="_top"><rect x="266" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="303.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Element</text></a><polyline points="341,25 351,20 351,30 341,25" stroke="#D4DDE4" fill="none"/><line x1="351" y1="25" x2="381" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement" target="_top"><rect x="381" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="436" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">HTMLElement</text></a><polyline points="491,25 501,20 501,30 491,25" stroke="#D4DDE4" fill="none"/><line x1="501" y1="25" x2="509" y2="25" stroke="#D4DDE4"/><line x1="509" y1="25" x2="509" y2="90" stroke="#D4DDE4"/><line x1="509" y1="90" x2="492" y2="90" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement" target="_top"><rect x="321" y="65" width="170" height="50" fill="#F4F7F8" stroke="#D4DDE4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">HTMLAnchorElement</text></a></svg></div>
a:hover text { fill: #0095DD; pointer-events: all;}
Properties
Inherits properties from its parent, HTMLElement, and implements those from HTMLHyperlinkElementUtils.
HTMLAnchorElement.accessKey- Is a
DOMStringrepresenting a single character that switches input focus to the hyperlink. HTMLAnchorElement.charset- Is a
DOMStringrepresenting the character encoding of the linked resource. HTMLAnchorElement.coords- Is a
DOMStringrepresenting a comma-separated list of coordinates. HTMLAnchorElement.download- Is a
DOMStringindicating that the linked resource is intended to be downloaded rather than displayed in the browser. The value represent the proposed name of the file. If the name is not a valid filename of the underlying OS, browser will adapt it. The value is a URL with a scheme likehttp:,file:,data:or evenblob:(created withURL.createObjectURL). HTMLHyperlinkElementUtils.hash- Is a
USVStringrepresenting the fragment identifier, including the leading hash mark ('#'), if any, in the referenced URL. HTMLHyperlinkElementUtils.host- Is a
USVStringrepresenting the hostname and port (if it's not the default port) in the referenced URL. HTMLHyperlinkElementUtils.hostname- Is a
USVStringrepresenting the hostname in the referenced URL. HTMLHyperlinkElementUtils.href- Is a
USVStringthat reflects thehrefHTML attribute, containing a valid URL of a linked resource. HTMLAnchorElement.hreflang- Is a
DOMStringthat reflects thehreflangHTML attribute, indicating the language of the linked resource. HTMLAnchorElement.media- Is a
DOMStringthat reflects themediaHTML attribute, indicating the intended media for the linked resource. HTMLAnchorElement.name- Is a
DOMStringrepresenting the anchor name. HTMLHyperlinkElementUtils.password- Is a
USVStringcontaining the password specified before the domain name. HTMLHyperlinkElementUtils.originRead only- Returns a
USVStringcontaining the origin of the URL, that is its scheme, its domain and its port. HTMLHyperlinkElementUtils.pathname- Is a
USVStringrepresenting the path name component, if any, of the referenced URL. HTMLHyperlinkElementUtils.port- Is a
USVStringrepresenting the port component, if any, of the referenced URL. HTMLHyperlinkElementUtils.protocol- Is a
USVStringrepresenting the protocol component, including trailing colon (':'), of the referenced URL. HTMLAnchorElement.referrerPolicy- Is a
DOMStringthat reflects thereferrerpolicyHTML attribute indicating which referrer to use. HTMLAnchorElement.rel- Is a
DOMStringthat reflects therelHTML attribute, specifying the relationship of the target object to the linked object. HTMLAnchorElement.relListRead only- Returns a
DOMTokenListthat reflects therelHTML attribute, as a list of tokens. HTMLAnchorElement.rev- Is a
DOMStringrepresenting that therevHTML attribute, specifying the relationship of the link object to the target object. HTMLHyperlinkElementUtils.search- Is a
USVStringrepresenting tThe search element, including leading question mark ('?'), if any, of the referenced URL. HTMLAnchorElement.shape- Is a
DOMStringrepresenting the shape of the active area. HTMLAnchorElement.tabindex- Is a
longcontaining the position of the element in the tabbing navigation order for the current document. HTMLAnchorElement.target- Is a
DOMStringthat reflects thetargetHTML attribute, indicating where to display the linked resource. HTMLAnchorElement.text- Is a
DOMStringbeing a synonym for theNode.textContentproperty. HTMLAnchorElement.type- Is a
DOMStringthat reflects thetypeHTML attribute, indicating the MIME type of the linked resource. HTMLHyperlinkElementUtils.username- Is a
USVStringcontaining the username specified before the domain name.
Methods
Inherits methods from its parent, HTMLElement, and implements those from HTMLHyperlinkElementUtils.
HTMLElement.blur()- Removes the keyboard focus from the current element.
HTMLElement.focus()- Gives the keyboard focus to the current element.
HTMLHyperlinkElementUtils.toString()- Returns a
USVStringcontaining the whole URL. It is a synonym forURLUtils.href, though it can't be used to modify the value.
The blur() and focus() methods are inherited from HTMLElement from HTML5 on, but were defined on HTMLAnchorElement in DOM Level 2 HTML and earlier specifications.
Specifications
| Specification | Status | Comment |
|---|---|---|
| Referrer Policy The definition of 'referrer attribute' in that specification. |
Working Draft | Added the referrer property. |
| WHATWG HTML Living Standard The definition of 'HTMLAnchorElement' in that specification. |
Living Standard | The following property has been added: download.Technically, the URL-related properties, media, host, hostname, pathname, port, protocol, search, and hash, have been moved to the URLUtils interface, and HTMLAreaElement implements this interface. |
| HTML5 The definition of 'HTMLAnchorElement' in that specification. |
Recommendation | The methods blur() and focus(), as well as the properties tabindex and accessKey, are now defined on HTMLElement.The following properties are now obsolete: charset, coords, name, rev, and shape.The following properties have been added: hash, host, hostname, media, pathname, port, protocol, relList, search, and text. |
| Document Object Model (DOM) Level 2 HTML Specification The definition of 'HTMLAnchorElement' in that specification. |
Recommendation | No change from Document Object Model (DOM) Level 1 Specification. |
| Document Object Model (DOM) Level 1 Specification The definition of 'HTMLAnchorElement' in that specification. |
Recommendation | Initial definition. |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | 1.0 (1.7 or earlier) | (Yes) | (Yes) | (Yes) |
download |
14 | (Yes) | 20 | ? | 15 | ? |
username, password, and origin |
No support | ? | 26.0 (26.0) | ? | ? | ? |
referrerPolicy |
51 | ? | 50 (50) | No support | No support | No support |
| Feature | Android Webview | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | 1.0 (1.0) | (Yes) | (Yes) | (Yes) |
download |
14 | 14 | (Yes) | ? | ? | ? | ? |
username, password, and origin |
No support | No support | ? | 26.0 (26.0) | ? | ? | ? |
referrerPolicy |
51 | 51 | ? | 50.0 (50) | No support | No support | No support |
See also
- The HTML element implementing this interface:
<a>
Document Tags and Contributors
Tags:
Contributors to this page:
Sheppy,
trusktr,
Pointy,
chrisdavidmills,
jpmedley,
erikadoyle,
fscholz,
slimsag,
teoli,
realityking,
kscarfone,
ethertank,
enderandpeter,
jswisher
Last updated by:
Sheppy,