localStorage без проблем изменяем значение и подписываемся на событие изменения значения
также можно решить с помощью workers |
Poznakomlus,
Проблема в том, чтобы он изменился при закрытии сессии |
Единственный выход - отключить на браузере все управляющие кнопки и завершать сессию кнопкой на странице с изменением localStorage. Но и при этом можно просто выключить компьютер...
|
я надеялся, что окну можно присвоить свой ID, как когда target='uniq_id', например
а потом просто смотреть в любой другой вкладке - не заряжен ли он в общем-то главное - определить, что такая страница уже открыта в соседней вкладке |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <script src="storage.js"></script> <script> var key = _storage('key'); _storage('key', !key); _storage().subscribe('key', function (value, e) { if(value){ _storage('key', !value); }else{ alert('Страница уже открыта'); } }); </script> </body> </html> Скрипт для работы с localStorage и парочка хороших примеров откройте копии страниц в броузере |
ух ты, работает )
вроде даже без нареканий спасибо! |
Dilettante_Pro,
Для особо тугодумных, Запустите первое окна, затем второе(Что Вы видите ? <script type="text/javascript">sessionStorage[1]=11111111;</script> <script type="text/javascript">alert(sessionStorage["1"])</script> C Одного домена sessionStorage читается на всех вкладках, пока хоть одна открыта |
Цитата:
|
Цитата:
А что именно работает? У меня пример Poznakomlus не хотел почему-то работать - выдавал Unexpected token на строку 119 storage.js : JSON.parse(value); Заменил в примере ключевое слово key на name - и все заработало, действительно, вроде четко отслеживает - в Chrome. В IE проблемы В Firefox срабатывает несколько странно. Firefox и Chrome друг друга не видят. |
Цитата:
открываешь вторую вкладку - кричит F5 - кричит короче реагирует на дубль и ни на что другое, что и требовалось (смотрю в FF и хроме) вкладки в разных браузерах пофигу, изначально то в одном будут открывать мне надо просто уведомление ставить, а не хаки обламывать ) |
Часовой пояс GMT +3, время: 18:15. |