2013-07-30 8 views
0

Я занимаюсь одной проблемой. У меня есть таймер бездействия пользователя, встроенный в jQuery, так что если пользователь не активен в течение 30 минут, он вышел из приложения. Это отлично работает на одной открытой вкладке браузера. Теперь я хотел бы иметь то же самое только для нескольких вкладок. Итак, если пользователь открывает несколько вкладок и работает только в одном из них, он все еще активен для всего приложения, моя текущая настройка выводит его из других вкладок, которые он не использовал в течение 30 минут. Как я могу общаться со всеми вкладками одновременно? Спасибо заранее, Вольф.Неактивный сеанс на нескольких вкладках открыт

+0

AJAX? БД? Пожалуйста, поделитесь с кодом, который вы уже пробовали. – BenM

ответ

0
  • создать общий таймер для всего одной функции pages.A бы do.Place эту функцию в отдельный файл JS
  • запустить таймер на window.onload.Pause таймер на window.blur .restart таймер на window.focus

    -включить это на каждую страницу вашего приложения.

    Вы можете получить гораздо больше информации, если вы покажете свой код.

+0

Спасибо за ответ, но это не то, что я ищу. Для меня пользователь активен, когда он делает что-то не только для открытия моей вкладки в приложении. Таким образом, моя функция в настоящее время проверяет эти события (mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove), но если пользователь переводит мышь на другую вкладку, как я могу узнать, чтобы я мог перезапустить мой таймер? Извините, если я не был ясен в своем посте. – Wolf87

+0

вы получаете это совершенно неправильно ... вам понадобится window.blur и фокус, чтобы узнать, когда пользователь переключится на вкладки ... нет другого способа его переустановить ... –