This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The HTMLHyperlinkElementUtils mixin defines utility methods and properties to work with HTMLAnchorElement and HTMLAreaElement. These utilities allow to deal with common features like URLs.

There are no objects of this type, but several objects HTMLAnchorElement and HTMLAreaElement implement it.

Properties

Note: This interface doesn't inherit any property.

HTMLHyperlinkElementUtils.href
This is a USVString containing the whole URL.
HTMLHyperlinkElementUtils.protocol
This is a USVString containing the protocol scheme of the URL, including the final ':'.
HTMLHyperlinkElementUtils.host
This is a USVString containing the host, that is the hostname, and then, if the port of the URL is not empty (which can happen because it was not specified or because it was specified to be the default port of the URL's scheme), a ':', and the port of the URL.
HTMLHyperlinkElementUtils.hostname
This is a USVString containing the domain of the URL.
HTMLHyperlinkElementUtils.port
This is a USVString containing the port number of the URL.
HTMLHyperlinkElementUtils.pathname
This is a USVString containing an initial '/' followed by the path of the URL.
HTMLHyperlinkElementUtils.search
This is a USVString containing a '?' followed by the parameters of the URL.
HTMLHyperlinkElementUtils.hash
This is a USVString containing a '#' followed by the fragment identifier of the URL.
HTMLHyperlinkElementUtils.username
This is a USVString containing the username specified before the domain name.
HTMLHyperlinkElementUtils.password
This is a USVString containing the password specified before the domain name.
HTMLHyperlinkElementUtils.origin Read only
This returns a USVString containing the origin of the URL (that is its scheme, its domain and its port).

Methods

Note: This interface doesn't inherit any method.

HTMLHyperlinkElementUtils.toString()
This returns a DOMString containing the whole URL. It is a synonym for HTMLHyperlinkElementUtils.href, though it can't be used to modify the value.

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'HTMLHyperlinkElementUtils' in that specification.
Living Standard Initial definition

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic support
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, the members of this interface were moved to URL
Edge ? Firefox Full support 22
Notes
Full support 22
Notes
Notes This mixin was called URLUtils before Firefox 45, and was also implemented to other by other interfaces, like Location. From Firefox 45, the other interfaces implement their own version of the properties and methods they need.
Notes Firefox was a bug whereby single contained in URLs are escaped when accessed via URL APIs (bug 1386683). This has been as of Firefox 57.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, the members of this interface were moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, the members of this interface were moved to URL
Edge Mobile ? Firefox Android Full support 22
Notes
Full support 22
Notes
Notes This mixin was called URLUtils before Firefox 45, and was also implemented to other by other interfaces, like Location. From Firefox 45, the other interfaces implement their own version of the properties and methods they need.
Notes Firefox was a bug whereby single contained in URLs are escaped when accessed via URL APIs (bug 1386683). This has been as of Firefox 57.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
hash
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface. Also, from Firefox 29 to Firefox 40, the returned value was incorrectly percent-decoded.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface. Also, from Firefox 29 to Firefox 40, the returned value was incorrectly percent-decoded.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
host
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support No
Notes
No support No
Notes
Notes In Internet Explorer 9, the host of an always include the port (e.g. developer.mozilla.org:443), even if there is no explicit port in the href attribute value.
Opera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
hostname
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
href
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
origin
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes Before Firefox 49, results for URL using the blob scheme incorrectly returned null.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes Before Firefox 49, results for URL using the blob scheme incorrectly returned null.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
password
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge ? Firefox Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile ? Firefox Android Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
pathname
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge No support NoFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes 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.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile No support NoFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes 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.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
port
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge No support NoFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile No support NoFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
protocol
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge No support NoFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile No support NoFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
search
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes 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.
IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Notes 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.
Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android ?
toString
Experimental
Chrome Full support 52Edge Full support YesFirefox Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support 52Chrome Android Full support 52Edge Mobile Full support YesFirefox Android Full support 22
Notes
Full support 22
Notes
Notes From Firefox 22 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?
username
Experimental
Chrome Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge ? Firefox Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Chrome Android Full support Yes
Notes
Full support Yes
Notes
Notes Starting in Chrome 52, this property was moved to URL
Edge Mobile ? Firefox Android Full support 26
Notes
Full support 26
Notes
Notes From Firefox 26 to Firefox 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.

See also

Document Tags and Contributors

Last updated by: connorshea,