HTMLAnchorElement
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. This interface corresponds to <a> element; not to be confused with <link>, which is represented by HTMLLinkElement)
Properties
Inherits properties from its parent, HTMLElement.
HTMLElement.accessKey-
Is a
DOMStringrepresenting a single character that switches input focus to the hyperlink. -
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. HTMLAnchorElement.hash-
Is a
USVStringrepresenting the fragment identifier, including the leading hash mark ('#'), if any, in the referenced URL. HTMLAnchorElement.host-
Is a
USVStringrepresenting the hostname and port (if it's not the default port) in the referenced URL. HTMLAnchorElement.hostname-
Is a
USVStringrepresenting the hostname in the referenced URL. HTMLAnchorElement.href-
Is a
USVStringthat is the result of parsing thehrefHTML attribute relative to the document, containing a valid URL of a linked resource. HTMLAnchorElement.hreflang-
Is a
DOMStringthat reflects thehreflangHTML attribute, indicating the language of the linked resource. -
HTMLAnchorElement.originRead only -
Returns a
USVStringcontaining the origin of the URL, that is its scheme, its domain and its port. HTMLAnchorElement.password-
Is a
USVStringcontaining the password specified before the domain name. HTMLAnchorElement.pathname-
Is a
USVStringcontaining an initial'/'followed by the path of the URL, not including the query string or fragment. HTMLAnchorElement.port-
Is a
USVStringrepresenting the port component, if any, of the referenced URL. HTMLAnchorElement.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.search-
Is a
USVStringrepresenting the search element, including leading question mark ('?'), if any, of the referenced URL. HTMLElement.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. HTMLAnchorElement.username-
Is a
USVStringcontaining the username specified before the domain name.
Obsolete properties
-
HTMLAnchorElement.charset -
Is a
DOMStringrepresenting the character encoding of the linked resource. -
HTMLAnchorElement.coords -
Is a
DOMStringrepresenting a comma-separated list of coordinates. -
HTMLAnchorElement.name -
Is a
DOMStringrepresenting the anchor name. -
HTMLAnchorElement.rev -
Is a
DOMStringrepresenting that therevHTML attribute, specifying the relationship of the link object to the target object.Note: Currently the W3C HTML 5.2 spec states that
revis no longer obsolete, whereas the WHATWG living standard still has it labeled obsolete. Until this discrepancy is resolved, you should still assume it is obsolete. -
HTMLAnchorElement.shape -
Is a
DOMStringrepresenting the shape of the active area.
Methods
Inherits methods from its parent, HTMLElement.
HTMLElement.blur-
Removes the keyboard focus from the current element.
HTMLElement.focus-
Gives the keyboard focus to the current element.
HTMLAnchorElement.toString()-
Returns a
USVStringcontaining the whole URL. It is a synonym forHTMLAnchorElement.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 |
|---|
| HTML Standard (HTML) # htmlanchorelement |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
HTMLAnchorElement |
1 |
12 |
1 |
5.5 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
charset |
1 |
12 |
1 |
6 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
coords |
1 |
12 |
1 |
6 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
download |
15 |
13 |
20 |
No |
15 |
10.1 |
≤37 |
18 |
20 |
14 |
10.3 |
1.0 |
hreflang |
1 |
12 |
1 |
6 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
name |
1 |
12 |
1 |
5.5 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
ping |
12 |
17 |
3 |
No |
15 |
5.1 |
≤37 |
18 |
4 |
14 |
5 |
1.0 |
referrerPolicy |
53 |
79 |
50 |
No |
40 |
14 |
53 |
53 |
50 |
41 |
14 |
7.2 |
rel |
1 |
12 |
1 |
5.5 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
relList |
65 |
18 |
30 |
No |
52 |
9 |
65 |
65 |
30 |
47 |
9 |
9.0 |
rev |
1 |
12 |
1 |
5.5 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
shape |
1 |
12 |
1 |
6 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
target |
1 |
12 |
1 |
5.5 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
text |
1 |
12 |
1 |
10 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
type |
1 |
12 |
1 |
6 |
≤12.1 |
3 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
hash |
1 |
12 |
1
From Firefox 29 to Firefox 40, the returned value was incorrectly percent-decoded.
|
5 |
15 |
1 |
1 |
18 |
4
From Firefox 29 to Firefox 40, the returned value was incorrectly percent-decoded.
|
14 |
1 |
1.0 |
host |
1 |
12 |
1 |
5
In Internet Explorer 9, the host of an
<a> always include the port (e.g. developer.mozilla.org:443), even if there is no explicit port in the href attribute value. |
15 |
1 |
1 |
18 |
4 |
14 |
1 |
1.0 |
hostname |
1 |
12 |
1 |
5 |
15 |
1 |
1 |
18 |
4 |
14 |
1 |
1.0 |
href |
1 |
12 |
1 |
5 |
≤12.1 |
1 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
origin |
8 |
17 |
26
Before Firefox 49, results for URL using the
blob scheme incorrectly returned null. |
No |
15 |
5.1 |
≤37 |
18 |
26
Before Firefox 49, results for URL using the
blob scheme incorrectly returned null. |
14 |
5 |
1.0 |
password |
32 |
79 |
26 |
No |
19 |
10 |
4.4.3 |
32 |
26 |
19 |
10 |
2.0 |
pathname |
1 |
12 |
1
Before Firefox 53, the
pathname and search HTMLHyperlinkElementUtils properties returned the wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return '/x?a=true&b=false' and search would return '', rather than '/x' and '?a=true&b=false' respectively. This has now been fixed. |
5 |
15 |
1 |
1 |
18 |
4
Before Firefox 53, the
pathname and search HTMLHyperlinkElementUtils properties returned the wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return '/x?a=true&b=false' and search would return '', rather than '/x' and '?a=true&b=false' respectively. This has now been fixed. |
14 |
1 |
1.0 |
port |
1 |
12 |
1 |
5 |
15 |
1 |
1 |
18 |
4 |
14 |
1 |
1.0 |
protocol |
1 |
12 |
1 |
5 |
15 |
1 |
1 |
18 |
4 |
14 |
1 |
1.0 |
search |
1 |
12 |
1
Before Firefox 53, the
pathname and search HTMLHyperlinkElementUtils properties returned the wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return '/x?a=true&b=false' and search would return '', rather than '/x' and '?a=true&b=false' respectively. This has now been fixed. |
5 |
15 |
1 |
1 |
18 |
4
Before Firefox 53, the
pathname and search HTMLHyperlinkElementUtils properties returned the wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return '/x?a=true&b=false' and search would return '', rather than '/x' and '?a=true&b=false' respectively. This has now been fixed. |
14 |
1 |
1.0 |
toString |
52 |
≤18 |
22 |
No |
Yes |
≤4 |
52 |
52 |
22 |
Yes |
≤3 |
6.0 |
username |
32 |
79 |
26 |
No |
19 |
10 |
4.4.3 |
32 |
26 |
19 |
10 |
2.0 |
See also
- The HTML element implementing this interface:
<a>
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement