Для вашей формы можно завести BroadcastChannel и обмениваться сообщениями присутствия: новая вкладка спрашивает, уже открытая отвечает. Добавьте идентификаторы экземпляров, чтобы понимать, от кого пришёл ответ. Такой обмен действует между совместимыми контекстами одного источника и раздела хранения, поэтому он не обнаружит все браузеры и устройства пользователя. Отсутствие ответа за выбранное время тоже не является строгим доказательством: вкладка может быть приостановлена. Если требуется именно один активный редактор, рассмотрите исключительную блокировку Web Locks и удерживайте её, пока редактор работает, предусмотрев проверку поддержки и защищённый контекст. Для сохранения данных всё равно полезна серверная проверка версии записи: предупреждение в браузере не защищает от правки с другого устройства.
Ответить на вопрос