kzen.dev
  • Вопросы
  • Метки
  • Пользователи
Оповещения
Вознаграждения
Регистрация
После регистрации, сможете получать уведомления об ответах и комментариях на Ваши вопросы.
Вход
Если у Вас уже есть аккаунт, войдите чтобы проверить новые уведомления.
Тут будут вознаграждения за добавленные вопросы, ответы и комментарий.
Дополнительно
Источник
Редактировать
 Maxsteel
Maxsteel
Вопрос

Javascript для обнаружения смены пользователем вкладки


Я хочу написать веб-страницу для онлайн-викторины. Основное требование, которое у меня есть, заключается в том, что если человек, принимающий участие в викторине, меняет вкладку или открывает новое окно даже без сворачивания браузера, т.е. если человек пытается посмотреть ответ в каком-то другом окне/вкладке, викторина должна остановиться.
P.S: это не должна быть какая-то очень новая функция HTML5. Я хочу, чтобы она поддерживалась всеми основными браузерами на данный момент.

37 2012-04-26T17:49:11+00:00 4
Программирование
javascript
html
Решение / Ответ
 Kristian
Kristian
26-го апреля 2012 в 5:52
2012-04-26T17:52:38+00:00
Дополнительно
Источник
Редактировать
#16043804

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

В jQuery это будет выглядеть следующим образом

$(window).focus(function() {
    //do something
});

$(window).blur(function() {
    //do something
});

цитата из этого ответа SO: https://stackoverflow.com/a/1760268/680578

 Community
Community
Редактировал ответ 23-го мая 2017 в 12:10
51
0
 Matt
Matt
26-го апреля 2012 в 5:52
2012-04-26T17:52:36+00:00
Дополнительно
Источник
Редактировать
#16043803

Если вы ориентируетесь на браузеры, которые поддерживают эту функцию, вы можете использовать API видимости страницы, доступный в HTML5. Он не обнаруживает непосредственно изменения вкладок, но обнаруживает изменения видимости. Что включает (но не ограничивается) изменения вкладок.

См. https://developer.mozilla.org/en/DOM/Using_the_Page_Visibility_API

25
0
 ptts
ptts
11-го августа 2017 в 3:03
2017-08-11T15:03:57+00:00
Дополнительно
Источник
Редактировать
#16043805

Лучшая нативная функция, без jQuery.

document.hasFocus

Проверьте ручку, проверьте, что происходит, когда вы переходите по ссылке и обратно на вкладку codepen.

https://codepen.io/damianocel/pen/Yxxzdj

17
0
 472084
472084
21-го декабря 2018 в 1:26
2018-12-21T13:26:11+00:00
Дополнительно
Источник
Редактировать
#16043806

С помощью jQuery:

$(window).on('focus', function () {

});

$(window).on('blur', function () {

});

$().фокус & $().размытость являются устаревшими.

2
0
Похожие сообщества 19
JavaScript Jobs — чат
JavaScript Jobs — чат
26 291 пользователей
JavaScript Jobs — чат для поиска работы и людей Правила оформления: @telegram-ru/r1WQe5F1m" rel="nofollow noopener noreferrer" class="text-blue hover:text-black link" target="_blank">https://teletype.in/@telegram-ru/r1WQe5F1m См. также: @mobile_jobs, @devops_jobs, @nodejs_jobs, @react_js, @angular_ru, @js_ru
Открыть telegram
JavaScript Noobs — сообщество новичков
JavaScript Noobs — сообщество новичков
9 470 пользователей
Помогаем друг другу разбираться с JS Правила: @js_noobs_ru/rules" rel="nofollow noopener noreferrer" class="text-blue hover:text-black link" target="_blank">https://teletype.in/@js_noobs_ru/rules Другие полезные чаты — https://github.com/goq/telegram-list или https://rudevs.network/ByKT2JwWQ
Открыть telegram
JavaScript — русскоговорящее сообщество
JavaScript — русскоговорящее сообщество
7 714 пользователей
Рекомендуем сразу отключить уведомления Правила: https://git.io/JycBd См. также: @js_noobs_ru, @nodejs_ru, @ts_cool, @react_js, @electron_cool Вакансии и поиск работы: @javascript_jobs
Открыть telegram
HTML/CSS — русскоговорящее сообщество
HTML/CSS — русскоговорящее сообщество
6 455 пользователей
Возникли проблемы с HTML или CSS? – пиши сюда, обсудим и предложим самое лучшее решение. @javascript_ru @js_noobs_ru @frontend_ru Каналы: @defront @htmlshit 🟡 Ищешь чат? @it_chats 🟡 Мы всегда рады помочь, но у нас есть правила. ВАЖНО: http://nometa.xyz
Открыть telegram
JavaScript.Ninja
JavaScript.Ninja
3 810 пользователей
Правила поведения проекта https://telegra.ph/Kodeks-povedeniya-proekta-JavaScriptNinja-12-15
Открыть telegram
pro.js
pro.js
3 721 пользователей
Сообщество веб (и javascript) разработчиков Чат для начинающих: @js_lib ⚠️ Вакансии - раз в неделю с вилкой зп ⚠️ Оффтоп -> @flood ❌Переход на личности ❌Троллинг ❌Реклама ❌Варез По всем вопросам: @igorz Зам: @slavik4
Открыть telegram
Добавить вопрос
Категории
Все
Технологий
Культура / Отдых
Жизнь / Искусство
Наука
Профессии
Бизнес
Пользователи
Все
Новые
Популярные
1
Ilya Smirnov
Зарегистрирован 6 дней назад
2
Денис Васьков
Зарегистрирован 1 неделю назад
3
Dima Patrushev
Зарегистрирован 1 неделю назад
4
sirojidddin otaboyev
Зарегистрирован 2 недели назад
5
Елена Гайдамамакинат
Зарегистрирован 2 недели назад
ID
JA
KO
RU
© kzen.dev 2023
Источник
stackoverflow.com
под лицензией cc by-sa 3.0 с атрибуцией