Html5rocks рд▓реЗрдЦреЛрдВ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдЬрд╛рд░реА рд░рдЦрдирд╛ред рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА
рдлреЛрдВрдЯ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ,
рд╡реАрдбрд┐рдпреЛ рдХреЗ рд╕рд╛рде рдХрд╛рдо
рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереА, рдЖрдЬ рд╣рдо
рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкреЙрдк-рдЕрдк рд╕рдВрджреЗрд╢ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рдЕрдм рддрдХ рдХреЗрд╡рд▓ рдХреНрд░реЛрдо рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА
рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдмрд┐рд▓реНрд▓реА рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рддрд╣рддред
рдкрд╣рд▓реЗ, рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ:
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 рд╕рдВрджреЗрд╢ рдПрдХ рдмрд╛рд░ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд╛рдХреА рджреГрд╢реНрдпрдорд╛рди рд▓реЛрдЧреЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред