#tabs #window #alert
#вкладки #окно #предупреждение
Вопрос:
Я пытаюсь уже довольно давно, но безуспешно.
Есть ли у вас какие-либо идеи, как вы можете создать всплывающее окно (alert) всякий раз, когда пользователь меняет вкладку / окно в своем браузере?
Таким образом, в принципе, когда пользователь изменяет окно в своем браузере, появится окно предупреждения, и пользователю нужно будет нажать кнопку ok, чтобы продолжить
Эта функциональность необходима, поскольку я создаю сайт онлайн-тестирования, и мне нужно отображать оповещение всякий раз, когда пользователи будут пытаться изменить вкладку / окно
Комментарии:
1. Пожалуйста, предоставьте больше информации, если хотите получить качественный ответ; в нынешнем виде вы выражаетесь крайне расплывчато. Кроме того, учитывая, что вы потратили довольно много времени безрезультатно, было бы желательно показать некоторые усилия, это позволило бы вам указать, где у вас возникли проблемы, и позволить другим разобраться в этот момент.
2. @Mr., ваше имя заставляет меня грустить каждый раз, когда я его вижу.
3. @Michael: Пока это не свидетельствует о моем вкладе, я могу с этим смириться.
4. @Mr. Я отредактировал как можно тщательнее. Что касается части кодирования, я просто трачу это время, ни к чему не придя. Итак, это была в основном процедура / code и erase / .
Ответ №1:
Вы можете использовать события focus
и blur
для объекта window (вкладки тоже считаются окнами). Попробуйте это:
window.addEventListener('focus', function() { console.log('Window has focus'); });
window.addEventListener('blur', function() { console.log('Window lost focus'); });
или с помощью jQuery:
$(window).focus(function() { console.log('Window has focus'); });
$(window).blur(function() { console.log('Window lost focus'); });
Кроме того, будьте осторожны при использовании оповещений таким образом. Многих пользователей это может немного раздражать.
Комментарии:
1. Я знаю, что подобные оповещения раздражают, но цель страниц, на которых я это внедряю, — НЕ изменять вкладку вашего браузера. Фокусировка и размытие, я думаю, как это сделать
2. Я знаю, что это не предназначено для изменения вкладки, но оповещения позволят сфокусироваться на странице, создающей оповещение. Но, я надеюсь, вы знаете, что делаете, потому что я понятия не имею, что у вас за здание, и может быть критически важно, чтобы пользователи не покидали страницу (онлайн-тестирование?) Надеюсь, я все же ответил на ваш вопрос.
3. Да, это будет онлайн-тестирование, поэтому пользователи должны оставаться на текущей вкладке / окне 🙂