The Notification()
constructor creates a new Notification
object instance, which represents a user notification.
var myNotification = new Notification(title, options);
title
options
Optional
dir
: The direction in which to display the notification. It defaults to auto
, which just adopts the browser's language setting behavior, but you can override that behaviour by setting values of ltr
and rtl
(although most browsers seem to ignore these settings.)lang
: The notification's language, as specified using a DOMString
representing a BCP 47 language tag. See the Sitepoint ISO 2 letter language codes page for a simple reference.USVString
containing the URL of the image used to represent the notification when there is not enough space to display the notification itself.body
: A DOMString
representing the body text of the notification, which will be displayed below the title.tag
: A DOMString
representing an identifying tag for the notification.icon
: A USVString
containing the URL of an icon to be displayed in the notification.image
: a USVString
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 when the notification fires.renotify
: A Boolean
specifying whether the user should be notified after a new notification replaces an old one. The default is false
, 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 is false
.actions
: An array of NotificationAction
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.The following options are listed in the most up-to-date spec, but are not supported in any browsers yet. It is advisable to keep checking back regularly to see if the status of these has updated, and let us know if you find any out of date information.
silent
: A Boolean
specifying whether the notification should be silent, i.e. no sounds or vibrations should be issued, regardless of the device settings. The default is false
, which means it won't be silent.sound
: A USVString
containing the URL of an audio file to be played when the notification fires.noscreen
: A Boolean
specifying whether the notification firing should enable the device's screen or not. The default is false
, which means it will enable the screen.sticky
: A Boolean
specifying whether the notification should be 'sticky', i.e. not easily clearable by the user. The default is false
, which means it won't be sticky.
In our Emogotchi demo (see source code), we run a simple spawnNotification()
function when we want to fire a notification — this is passed arguments to specify the body, icon and title we want, then it creates the necessary options
object and fires the notification using the Notification()
constructor.
function spawnNotification(theBody,theIcon,theTitle) { var options = { body: theBody, icon: theIcon } var n = new Notification(theTitle,options); }
Specification | Status | Comment |
---|---|---|
Notifications API The definition of 'Notification()' in that specification. | Living Standard | Initial definition. |
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 5 webkit (see notes) 22 | 4.0 moz (see notes) 22 | Edge 38.14352 | 25 | 6 (see notes) |
Available in workers | 45 | 41.0 (41.0) | ? | 32 | ? |
Secure contexts only | 62 | ? | ? | 49 | ? |
icon | 5 webkit (see notes) 22 | 4.0 moz (see notes) 22 | No support | 25 | No support |
vibrate | 45 | No support | No support | 32 | No support |
requireInteraction | 47 | (52, Nightly only) | ? | 32 | ? |
renotify | 50 | ? | ? | 37 | ? |
badge | 53 | ? | ? | 40 | ? |
image | 55 | ? | ? | 32 | ? |
Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | No support | (Yes) | 4.0 moz (see notes) 22 | 1.0.1 moz (see notes) 1.2 | No support | (Yes) | No support |
Available in workers | No support | 45 | 41.0 (41.0) | ? | ? | 32 | ? |
Secure contexts only | No support | 62 | ? | ? | ? | 49 | ? |
icon | No support | (Yes) | 4.0 moz (see notes) 22 | 1.0.1 moz (see notes) 1.2 | No support | 25 | No support |
vibrate | No support | 45 | No support | No support | No support | 32 | No support |
requireInteraction | No support | 47 | ? | ? | ? | 32 | ? |
renotify | No support | 50 | ? | ? | ? | 37 | ? |
badge | No support | 53 | ? | ? | ? | 40 | ? |
image | No support | 55 | ? | ? | ? | 32 | ? |
Starting in Chrome 49, notifications do not work in incognito mode.
Since Version 38.14352 of MS Edge Notification API is suported. Wikipedia - MS Edge
IE 11 and < is not supported.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Notification/Notification