Notification.icon
The icon
read-only property of the Notification
interface contains the URL of an icon to be displayed as part of the notification, as specified in the icon
option of the Notification()
constructor.
Note: This feature is available in Web Workers.
Syntax
JavaScript
Copy Code
var icon = Notification.icon;
Value
A USVString
.
Examples
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.
JavaScript
Copy Code
function spawnNotification(theBody,theIcon,theTitle) { var options = { body: theBody, icon: theIcon } var n = new Notification(theTitle,options); }
Specifications
Specification | Status | Comment |
---|---|---|
Notifications API The definition of 'icon' in that specification. |
Living Standard | Living standard |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 5 webkit (see notes) 22 |
4.0 moz (see notes) 22 |
Not supported | 25 | Not supported |
Available in workers | ? | 41.0 (41.0) | ? | ? | ? |
Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|---|
Basic support | ? |
(Yes) |
4.0 moz (see notes) 22 |
1.0.1 moz (see notes) 1.2 |
Not supported | ? | Not supported |
(Yes) |
Available in workers | ? | ? | 41.0 (41.0) | ? | ? | ? | ? | ? |
Firefox OS notes
- Prior to Firefox 22 (Firefox OS <1.2), the instantiation of a new notification must be done with the
navigator.mozNotification
object through itscreateNotification
method. - Prior to Firefox 22 (Firefox OS <1.2), the Notification was displayed when calling the
show
method and supported only theclick
andclose
events. - Nick Desaulniers wrote a Notification shim to cover both newer and older implementations.
- One particular Firefox OS issue is that you can pass a path to an icon to use in the notification, but if the app is packaged you cannot use a relative path like
/my_icon.png
. You also can't usewindow.location.origin + "/my_icon.png"
becausewindow.location.origin
is null in packaged apps. The manifest origin field fixes this, but it is only available in Firefox OS 1.1+. A potential solution for supporting Firefox OS <1.1 is to pass an absolute URL to an externally hosted version of the icon. This is less than ideal as the notification is displayed immediately without the icon, then the icon is fetched, but it works on all versions of Firefox OS. - When using notifications in a Firefox OS app, be sure to add the
desktop-notification
permission in your manifest file. Notifications can be used at any permission level, hosted or above.JavaScriptCopy Code"permissions": { "desktop-notification":{} }
Chrome notes
- Before Chrome 22, the support for notification followed an old prefixed version of the specification and used the
navigator.webkitNotifications
object to instantiate a new notification. - Before Chrome 32,
Notification.permission
was not supported. - Before Chrome 42, service worker additions were not supported.
Safari notes
- Safari started to support notification with Safari 6, but only on Mac OSX 10.8+ (Mountain Lion).
See also
License
© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/api/notification/icon