1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
---
title: Navigator
slug: Web/API/Navigator
tags:
- API
- DOM4
- Interface
- Navigator
- NeedsBrowserCompatibility
- NeedsSpecTable
- NeedsTranslation
- Reference
- TopicStub
- Web
- Web Performance
translation_of: Web/API/Navigator
---
<p>{{ APIRef("DOM4") }}</p>
<p>The <code><strong>Navigator</strong></code> interface represents the state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.</p>
<p>A <code>Navigator</code> object can be retrieved using the read-only {{domxref("window.navigator")}} property.</p>
<h2 id="Properties">Properties</h2>
<p><em>Doesn't inherit any properties, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorLanguage")}}, {{domxref("NavigatorOnLine")}}, {{domxref("NavigatorContentUtils")}}, {{domxref("NavigatorStorage")}}, {{domxref("NavigatorStorageUtils")}}, {{domxref("NavigatorCookies")}}, {{domxref("NavigatorConcurrentHardware")}}, {{domxref("NavigatorPlugins")}}, and {{domxref("NavigatorUserMedia")}}.</em></p>
<h3 id="Standard">Standard</h3>
<dl>
<dt>{{domxref("Navigator.activeVRDisplays")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns an array containing every {{domxref("VRDisplay")}} object that is currently presenting ({{domxref("VRDisplay.ispresenting")}} is <code>true</code>).</dd>
<dt>{{domxref("NavigatorID.appCodeName")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns the internal "code" name of the current browser. Do not rely on this property to return the correct value.</dd>
<dt>{{domxref("NavigatorID.appName")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns a {{domxref("DOMString")}} with the official name of the browser. Do not rely on this property to return the correct value.</dd>
<dt>{{domxref("NavigatorID.appVersion")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns the version of the browser as a {{domxref("DOMString")}}. Do not rely on this property to return the correct value.</dd>
<dt>{{domxref("Navigator.battery")}} {{readonlyInline}}</dt>
<dd>Returns a {{domxref("BatteryManager")}} object you can use to get information about the battery charging status.</dd>
<dt>{{domxref("Navigator.connection")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Provides a {{domxref("NetworkInformation")}} object containing information about the network connection of a device.</dd>
<dt>{{domxref("Navigator.geolocation")}} {{readonlyInline}}</dt>
<dd>Returns a {{domxref("Geolocation")}} object allowing accessing the location of the device.</dd>
<dt>{{domxref("NavigatorConcurrentHardware.hardwareConcurrency")}} {{readOnlyInline}}</dt>
<dd>Returns the number of logical processor cores available.</dd>
<dt>{{domxref("NavigatorPlugins.javaEnabled")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns a {{domxref("Boolean")}} flag indicating whether the host browser is Java-enabled or not.</dd>
<dt>{{domxref("NavigatorLanguage.language")}} {{readonlyInline}}</dt>
<dd>Returns a {{domxref("DOMString")}} representing the preferred language of the user, usually the language of the browser UI. The <code>null</code> value is returned when this is unknown.</dd>
<dt>{{domxref("NavigatorLanguage.languages")}} {{readonlyInline}}</dt>
<dd>Returns an array of {{domxref("DOMString")}} representing the languages known to the user, by order of preference.</dd>
<dt>{{domxref("NavigatorPlugins.mimeTypes")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns an {{domxref("MimeTypeArray")}} listing the MIME types supported by the browser.</dd>
<dt>{{domxref("NavigatorOnLine.onLine")}} {{readonlyInline}}</dt>
<dd>Returns a {{domxref("Boolean")}} indicating whether the browser is working online.</dd>
<dt>{{domxref("Navigator.oscpu")}}</dt>
<dd>Returns a string that represents the current operating system.</dd>
<dt>{{domxref("Navigator.permissions")}} {{readonlyinline}}{{experimental_inline}}</dt>
<dd>Returns a {{domxref("Permissions")}} object that can be used to query and update permission status of APIs covered by the <a href="/en-US/docs/Web/API/Permissions_API">Permissions API</a>.</dd>
<dt>{{domxref("NavigatorID.platform")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns a string representing the platform of the browser. Do not rely on this function to return a significant value.</dd>
<dt>{{domxref("NavigatorPlugins.plugins")}} {{readonlyInline}}{{experimental_inline}}</dt>
<dd>Returns a {{domxref("PluginArray")}} listing the plugins installed in the browser.</dd>
<dt>{{domxref("NavigatorID.product")}} {{readonlyInline}} {{experimental_inline}}</dt>
<dd>Always returns <code>'Gecko'</code>, on any browser. This property is kept only for compatibility purpose.</dd>
<dt>{{domxref("Navigator.serviceWorker")}} {{readonlyInline}}</dt>
<dd>Returns a {{domxref("ServiceWorkerContainer")}} object, which provides access to registration, removal, upgrade, and communication with the {{domxref("ServiceWorker")}} objects for the <a href="https://html.spec.whatwg.org/multipage/browsers.html#concept-document-window">associated document</a>.</dd>
<dt>{{domxref("Navigator.storage")}} {{readonlyinline}}</dt>
<dd>Returns the singleton {{domxref('StorageManager')}} object used for managing persistance permissions and estimating available storage on a site-by-site/app-by-app basis.</dd>
<dt>{{domxref("NavigatorID.userAgent")}} {{readonlyInline}}</dt>
<dd>Returns the user agent string for the current browser.</dd>
</dl>
<h3 id="Methods" name="Methods">Non-standard</h3>
<div class="note">
<p>Firefox OS devices adds more non-standard properties. You can consult them on the <a href="/en-US/docs/Mozilla/Firefox_OS/API/Navigator">Firefox OS Navigator extensions article</a>.</p>
</div>
<p>{{domxref("Navigator.buildID")}} {{non-standard_inline}}</p>
<dl>
<dd>Returns the build identifier of the browser (e.g., "2006090803").</dd>
<dt>{{domxref("Navigator.cookieEnabled")}} {{non-standard_inline}}</dt>
<dd>Returns a boolean indicating whether cookies are enabled in the browser or not.</dd>
<dt>{{domxref("Navigator.credentials")}} {{non-standard_inline}}</dt>
<dd>Returns the {{domxref("CredentialsContainer")}} interface which exposes methods to request credentials and notify the user agent when interesting events occur such as successful sign in or sign out. </dd>
<dt>{{domxref("Navigator.doNotTrack")}} {{non-standard_inline}}</dt>
<dd>Reports the value of the user's do-not-track preference. When this value is "yes", your web site or application should not track the user.</dd>
<dt>{{domxref("Navigator.id")}} {{non-standard_inline}}</dt>
<dd>Returns the {{domxref("window.navigator.id", "id")}} object which you can use to add support for <a href="/en-US/docs/BrowserID" title="BrowserID">BrowserID</a> to your web site.</dd>
<dt>{{domxref("Navigator.mediaDevices")}} {{non-standard_inline}}</dt>
<dd>Returns a reference to a {{domxref("MediaDevices")}} object which can then be used to get information about available media devices ({{domxref("MediaDevices.enumerateDevices()")}}), find out what constrainable properties are supported for media on the user's computer and user agent ({{domxref("MediaDevices.getSupportedConstraints()")}}), and to request access to media using {{domxref("MediaDevices.getUserMedia()")}}.</dd>
<dt>{{domxref("Navigator.mozNotification")}} {{deprecated_inline("22")}} {{non-standard_inline}}<br>
{{domxref("Navigator.webkitNotification")}}</dt>
<dd>Returns a {{domxref("navigator.mozNotification", "notification")}} object you can use to deliver notifications to the user from your web application.</dd>
<dt>{{domxref("Navigator.mozSocial")}} {{non-standard_inline}}</dt>
<dd>The Object, returned by the <code>navigator.mozSocial</code> property, is available within the social media provider's panel to provide functionality it may need.</dd>
<dt>{{domxref("Navigator.presentation")}} {{non-standard_inline}}</dt>
<dd>Returns a reference to the {{domxref("Presentation")}} API.</dd>
<dt>{{domxref("Navigator.productSub")}} {{non-standard_inline}}</dt>
<dd>Returns the build number of the current browser (e.g., "20060909").</dd>
<dt>{{domxref("Navigator.securitypolicy")}} {{non-standard_inline}}</dt>
<dd>Returns an empty string. In Netscape 4.7x, returns "US & CA domestic policy" or "Export policy".</dd>
<dt>{{domxref("Navigator.standalone")}} {{non-standard_inline}}</dt>
<dd>Returns a boolean indicating whether the browser is running in standalone mode. Available on Apple's iOS Safari only.</dd>
<dt>{{domxref("Navigator.storageQuota")}} {{readonlyinline}} {{experimental_inline}}</dt>
<dd>Returns a {{domxref('StorageQuota')}} interface which provides means to query and request storage usage and quota information.</dd>
<dt>{{domxref("Navigator.vendor")}} {{non-standard_inline}}</dt>
<dd>Returns the vendor name of the current browser (e.g., "Netscape6").</dd>
<dt>{{domxref("Navigator.vendorSub")}} {{non-standard_inline}}</dt>
<dd>Returns the vendor version number (e.g. "6.1").</dd>
<dt>{{domxref("Navigator.webkitPointer")}} {{non-standard_inline}}</dt>
<dd>Returns a PointerLock object for the <a href="/en-US/docs/API/Pointer_Lock_API" title="Mouse Lock API">Mouse Lock API</a>.</dd>
</dl>
<h2 id="Methods" name="Methods">Methods</h2>
<p><em>Doesn't inherit any method, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorContentUtils")}}, <em>{{domxref("NavigatorUserMedia")}}, </em>and {{domxref("NavigatorStorageUtils")}}.</em></p>
<h3 id="Standard_2">Standard</h3>
<dl>
<dt>{{domxref("Navigator.getVRDisplays()")}} {{experimental_inline}}</dt>
<dd>Returns a promise that resolves to an array of {{domxref("VRDisplay")}} objects representing any available VR devices connected to the computer.</dd>
<dt>{{domxref("Navigator.getUserMedia", "Navigator.getUserMedia()")}} {{experimental_inline}}</dt>
<dd>After having prompted the user for permission, returns the audio or video stream associated to a camera or microphone on the local computer.</dd>
<dt>{{domxref("Navigator.registerContentHandler()")}}</dt>
<dd>Allows web sites to register themselves as a possible handler for a given MIME type.</dd>
<dt>{{domxref("Navigator.registerProtocolHandler()")}}</dt>
<dd>Allows web sites to register themselves as a possible handler for a given protocol.</dd>
<dt>{{domxref("Navigator.requestMediaKeySystemAccess()")}} {{experimental_inline}}</dt>
<dd>Returns a <span style="line-height: 19.0909080505371px;">{{jsxref("Promise")}} for a MediaKeySystemAccess object.</span></dd>
<dt>{{domxref("Navigator.sendBeacon()")}}{{experimental_inline}}</dt>
<dd>Used to asynchronously transfer a small amount of data using {{Glossary("HTTP")}} from the User Agent to a web server.</dd>
<dt>{{domxref("NavigatorID.taintEnabled()")}} {{deprecated_inline("1.7.8")}} {{obsolete_inline("9.0")}} {{experimental_inline}}</dt>
<dd>Returns <code>false</code>. JavaScript taint/untaint functions removed in JavaScript 1.2.</dd>
<dt>{{domxref("Navigator.vibrate()")}} {{gecko_minversion_inline("11.0")}}</dt>
<dd>Causes vibration on devices with support for it. Does nothing if vibration support isn't available.</dd>
</dl>
<h3 id="Specification" name="Specification">Non-standard</h3>
<div class="note">
<p>Firefox OS devices adds more non-standard methods. You can consult them on the <a href="/en-US/docs/Mozilla/Firefox_OS/API/Navigator">Firefox OS Navigator extensions article</a>.</p>
</div>
<p>{{domxref("Navigator.mozIsLocallyAvailable()")}} {{non-standard_inline}}</p>
<dl>
<dd>Lets code check to see if the document at a given URI is available without using the network.</dd>
<dt>{{domxref("Navigator.mozPay()")}} {{non-standard_inline}}</dt>
<dd>Allows in-app payment.</dd>
</dl>
|