Страницы

Поиск по вопросам

четверг, 25 октября 2018 г.

Запрет открытия сайта более чем в одной вкладке

Всем привет.
Задача: при открытии пользователем сайта во второй вкладке браузера, в первой вкладке должно появиться сообщение о том, что открыта новая вкладка.
Есть ли возможность реализовать этот функционал с максимальной кроссбраузерностью?


Ответ

Всем спасибо за наводки и примеры. Вот окончательное решение:
window.session = revoke(5); localStorage.setItem("session", window.session); var onStorage = function (e) { if (e.key === 'session' && e.newValue !== window.session) localStorage.setItem("multitab", window.session); if (e.key === "multitab" && e.newValue && e.newValue !== window.session) { window.removeEventListener("storage", onStorage); localStorage.setItem("session", localStorage.getItem("multitab")); localStorage.removeItem("multitab"); alert("Новая вкладка"); } }; window.addEventListener('storage', onStorage);
P.S. revoke(5) -- функция, которая генерирует ключ, с длиной 5.

Комментариев нет:

Отправить комментарий