Notification()
Note: This feature is available in Web Workers
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The Notification()
constructor creates a new Notification
object instance, which represents a user notification.
Syntax
var notification = new Notification(title, options);
Parameters
title
-
Defines a title for the notification, which is shown at the top of the notification window.
-
options
Optional -
An options object containing any custom settings that you want to apply to the notification. The possible options are:
-
dir
: The direction in which to display the notification. It defaults toauto
, which just adopts the browser's language setting behavior, but you can override that behavior by setting values ofltr
andrtl
(although most browsers seem to ignore these settings.) -
lang
: The notification's language, as specified using aDOMString
representing a BCP 47 language tag. See the Sitepoint ISO 2 letter language codes page for a simple reference. -
badge
: AUSVString
containing the URL of the image used to represent the notification when there isn't enough space to display the notification itself. -
body
: ADOMString
representing the body text of the notification, which is displayed below the title. -
tag
: ADOMString
representing an identifying tag for the notification. -
icon
: AUSVString
containing the URL of an icon to be displayed in the notification. -
image
: aUSVString
containing the URL of an image to be displayed in the notification. -
data
: Arbitrary data that you want associated with the notification. This can be of any data type. -
vibrate
: A vibration pattern for the device's vibration hardware to emit with the notification. -
renotify
: A boolean value specifying whether the user should be notified after a new notification replaces an old one. The default isfalse
, which means they won't be notified. -
requireInteraction
: Indicates that a notification should remain active until the user clicks or dismisses it, rather than closing automatically. The default value isfalse
. -
actions
: An array ofNotificationAction
s representing the actions available to the user when the notification is presented. These are options the user can choose among in order to act on the action within the context of the notification itself. The action's name is sent to the service worker notification handler to let it know the action was selected by the user. -
silent
: A boolean value specifying whether the notification is silent (no sounds or vibrations issued), regardless of the device settings. The default isfalse
, which means it won't be silent.
-
Example
In our Emogotchi demo
(see source code), we run a spawnNotification()
function when we want to trigger a notification. The function is passed parameters to specify the body, icon, and title we want, and then it creates the necessary options
object and triggers the notification by using the Notification()
constructor.
function spawnNotification(body, icon, title) { var options = { body: body, icon: icon } var notification = new Notification(title, options); }
Specifications
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 | |
Notification |
20 |
14 |
22
4
|
No |
23 |
7 |
No |
25 |
22
4
|
24 |
No |
1.5 |
Chrome notes
Starting in Chrome 49, notifications don't work in incognito mode.
Chrome for Android will throw a TypeError
when calling the Notification
constructor. It only supports creating notifications from a service worker. See the Chromium issue tracker for more details.
Internet Explorer notes
Version 38.14352 and higher of MS Edge Notification API is supported. Wikipedia - MS Edge
IE 11 and lower isn't supported.
See also
© 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/Notification/Notification