Сделать вкладку браузера флагом уведомления
Из соображений безопасности мой сайт автоматически подписывает пользователей через 5 минут бездействия. Я достигаю этого через тайм-ауты jquery, которые reset в любое время, когда пользователь делает то, что я считаю "активностью". Чтобы обеспечить безопасность, тайм-аут файла cookie также устанавливается в 5 минут, и мой jquery возвращает сердцебиение обратно на сервер, чтобы гарантировать, что cookie не истечет.
В настоящее время, примерно через 4 минуты бездействия, открывается диалоговое окно jquery ui, предупреждающее пользователя о надвигающемся таймауте. Пользователь может выбрать, чтобы войти в систему, выйти сейчас или ничего не делать, и они вынуждены выходить в конце 5 минут.
Моя проблема в том, что я хочу, чтобы вкладка flash/blink с другим цветом фона предупреждала пользователя, что что-то происходит, пока они не обращают внимания. Я просто не уверен, как это сделать.
Ответы
Ответ 1
Вы можете изменить название страницы (это также должно изменить текст на вкладке).
document.title = 'New title';
Кроме того, вы можете сделать это в setInterval
назад и вперед между заголовком страницы и информацией, которую вы пытаетесь показать пользователю. Я видел это поведение в gmail с входящим сообщением чата.
Ответ 2
Невозможно изменить фон вкладки браузера, по крайней мере, не последовательно на всех.
Как отметил Йосия, setInterval
можно использовать для создания мигающего заголовка страницы.
Этот javascript использует его:
var PageTitleNotification = {
Vars:{
OriginalTitle: document.title,
Interval: null
},
On: function(notification, intervalSpeed){
var _this = this;
_this.Vars.Interval = setInterval(function(){
document.title = (_this.Vars.OriginalTitle == document.title)
? notification
: _this.Vars.OriginalTitle;
}, (intervalSpeed) ? intervalSpeed : 1000);
},
Off: function(){
clearInterval(this.Vars.Interval);
document.title = this.Vars.OriginalTitle;
}
}
Это можно использовать как:
PageTitleNotification.On("User logged out!");
См. мой следующий пост в блоге для получения дополнительной информации:
http://curtistimson.co.uk/js/create-a-flashing-tab-notification-page-title/
Ответ 3
вы можете изменить заголовок страницы, который будет отображаться на вкладке браузера, но вы не можете изменить цвет фона или сделать его мигающим.
Ответ 4
Вы также можете добавить окно alert. Когда пользователь находится на другой вкладке, браузер имеет встроенную функцию мигания вкладок (с предупреждением). Таким образом, изменение названия документа вместе с предупреждением будет служить вашей цели. Примечание: перед отображением оповещения вам нужно сначала проверить, активна ли табло.