рдкрд╣рд▓реЗ, рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ:
if (window.webkitNotifications) {
console.log( "Notifications are supported!" );
}
else {
console.log( "Notifications are not supported for this Browser/OS version yet." );
}
WebkitNotifications рдирд╛рдо рдЕрд╕реНрдерд╛рдпреА рд╣реИ - рдорд╛рдирдХ рдЕрднреА рднреА рд╕реНрд╡реАрдХреГрдд рдирд╣реАрдВ рд╣реИред
рдЕрдЧрд▓рд╛, рд╣рдо рд╕реНрд╡рдпрдВ рд╣реА рдЕрд▓рд░реНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдпрд╛ рддреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЯреЗрдХреНрд╕реНрдЯ рд╕рдВрджреЗрд╢ рдпрд╛ html рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдиреАрдЪреЗ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬреЛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрд▓рд░реНрдЯ рдмрдирд╛рддрд╛ рд╣реИ:
function createNotificationInstance(options) {
if (options.notificationType == 'simple' ) {
return window.webkitNotifications.createNotification(
'icon.png' , 'Notification Title' , 'Notification content...' );
} else if (options.notificationType == 'html' ) {
return window.webkitNotifications.createHTMLNotification( 'http://someurl.com' );
}
}
рдЕрдм рд╣рдо рд╢рд╛рдпрдж рдЕрд▓рд░реНрдЯ рдмрдирд╛рдиреЗ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдкрд░ рдЖрдЧреЗ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ - рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред рдЙрдкрд░реЛрдХреНрдд рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рддреНрд░реБрдЯрд┐ рдХреЛ рдлреЗрдВрдХ рджреЗрдЧрд╛ рдпрджрд┐ рдХреЛрдИ рд╕рдВрдЧрдд рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВред рдЖрдк рдЯреНрд░рд╛рдЗ -рдХреИрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЪреЗрдХрдкрд░реНрдорд┐рд╢рди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред
document .querySelector( '#show_button' ).addEventListener( 'click' , function () {
if (window.webkitNotifications.checkPermission() == 0) { // 0 is PERMISSION_ALLOWED
// function defined in step 2
createNotificationInstance({ notificationType: 'html' });
} else {
window.webkitNotifications.requestPermission();
}
}, false );
рдпрджрд┐ рдЕрдиреБрдорддрд┐рдпрд╛рдВ рдЕрднреА рддрдХ рдЬрд╛рд░реА рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕ рд╕рдВрджреЗрд╢ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗ:
рдпрд╣рд╛рдБ рдореБрдЦреНрдп рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ requestPermission рд╡рд┐рдзрд┐ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдШрдЯрдирд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдХреБрдВрдЬреА рдкрд░ рдорд╛рдЙрд╕ рдХреНрд▓рд┐рдХред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рд╣рдореЗрд╢рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рд╣рдо рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рднреА рдмрди рд╕рдХрддреЗ рд╣реИрдВ - рдкреГрд╖реНрдарднреВрдорд┐ рдХрд╛ рд░рдВрдЧ рдмрджрд▓рдирд╛, рдПрдХ рдзреНрд╡рдирд┐ рдЦреЗрд▓рдирд╛, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдпрд╣ рдХреИрд╕реЗ рдХрд░реЗрдВ рдиреАрдЪреЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
document .querySelector( '#show_button' ).addEventListener( 'click' , function () {
if (window.webkitNotifications.checkPermission() == 0) { // 0 is PERMISSION_ALLOWED
// function defined in step 2
notification_test = createNotificationInstance({notificationType: 'html' });
notification_test.ondisplay = function () { ... do something ... };
notification_test.onclose = function () { ... do something else ... };
notification_test.show();
} else {
window.webkitNotifications.requestPermission();
}
}, false );
рдпрд╣рд╛рдВ рдЖрдк рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдирд╡реАрдирддрдо рдЯреНрд╡реАрдЯреНрд╕ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ
рдФрд░ рдЖрдЦрд┐рд░реА рдЯрд┐рдкреНрдкрдгреАред рд╕реНрдХреНрд░реАрди рдкрд░ рдХреЗрд╡рд▓ 5 рд╕рдВрджреЗрд╢ рдПрдХ рдмрд╛рд░ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд╛рдХреА рджреГрд╢реНрдпрдорд╛рди рд▓реЛрдЧреЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред