Привет. Думаю многие, кто имеет аккаунт ВКонтакте и слушает там музыку, заметили, что если включить трек на одной вкладке, а потом включить второй на другой, то первый трек уйдет на паузу.
Примерно то же самое происходит и с различными уведомлениями (новое сообщение, ответ на комментарий/пост и т.п.
) – оно отображается только в активной вкладке.
Если кому-то интересно, как это работает и как сделать что-то подобное на своем сайте, добро пожаловать на взлом.
Теория
И все это реализуется с помощью Локальное хранилище HTML5 .Возьмем тот же аудиоплеер.
Когда вы запускаете трек, идентификатор окна и состояние проигрывателя (например, «воспроизведение») сохраняются в локальном хранилище.
Если другой трек запускается в другом окне (разумеется, того же домена), все вкладки приостанавливают проигрыватели.
И так далее.
Упражняться
Мы будем хранить эти события в одном ключе, например, notifier_event. Напишем туда строковое представление объекта следующего вида:Теги: #localstorage #уведомления #вкладки браузера #разработка сайтовvar evt = {
-
Как Обрезать Сим-Карту Ipad Wifi+3G
19 Oct, 24 -
Следующее Поколение Браузеров
19 Oct, 24