Как я могу удалить timeout
, который был установлен в другом tab
в браузере?ClearTimeout установлен на другой вкладке
Я пытался путем сохранения ссылки тайм-аута в localStorage
, но не смог ясно timeout
function setIdleTimeout() {
var idleTimeout = setTimeout(function() {
//autologout
}, 20000);
localStorage.setItem('idleTimeout', idleTimeout);
}
function clearIdleTimeout() {
var idleTimeout = localStorage.getItem('idleTimeout');
clearTimeout(idleTimeout);
localStorage.setItem('idleTimeout', idleTimeout);
}
Если я позвоню clearIdleTimeout()
во второй вкладке, это не очищает timeout
набор в previous tab
Вы не можете сделать, если обе вкладки не из того же домена, и вы получили ссылку от одного к другому (через 'окно .opener' или что-то в этом роде). Идентификаторы таймера - это просто цифры, и есть неявное пространство имен для каждого окна. – Pointy
обе вкладки находятся в одном домене, я реализую функцию autologout, если пользователь не работает, но не хочет, чтобы первая вкладка выходила из системы, так как он работает на второй вкладке – dzona
'idleTimeout' выглядит как строка, а не переменная – guest271314