Как я могу определить, когда пользователь переключает вкладку, используя javascript? - PullRequest
0 голосов
/ 20 июня 2020

Я хочу завершить полноэкранный режим при смене вкладки или быстром переключении. Можно ли это сделать с помощью javascript?

У меня есть следующий код javascript, который завершает полноэкранный режим. Мне нужна помощь в обнаружении изменения во внутренних chrome вкладках [с помощью сочетания клавиш ctrl + tab], а также в обнаружении изменений во вкладках windows, например, когда человек переключает chrome (любой браузер) на проводник (например) [используя сочетание клавиш alt + tab].

Мой javascript код -

if (document.exitFullscreen) {
  document.exitFullscreen();
} 
else if (document.mozCancelFullScreen) {
  document.mozCancelFullScreen();
} 
else if (document.webkitExitFullscreen) {
  document.webkitExitFullscreen();
} 
else if (document.msExitFullscreen) {
  document.msExitFullscreen();
}

Я хочу обернуть этот код в функции вкладки переключателя. Пожалуйста, помогите.

Я также пробовал -

document.addEventListener("visibilitychange", function tabsswitch() {
   if(document.hidden) {
     alert('document hidden')
   } 
});

, но это не работает, когда я меняю вкладку windows, например, как я переключаюсь с chrome на свой редактор кода и снова обратно на chrome он не показывает никаких предупреждений.

Ответы [ 2 ]

2 голосов
/ 20 июня 2020

Существует HTML 5 API для определения изменения видимости вкладки:

document.addEventListener("visibilitychange", function () {});
1 голос
/ 20 июня 2020

API видимости страницы предоставляет нам два атрибута верхнего уровня: document.hidden (логический) и document.visibilityState (которые могут быть любой из этих строк: «hidden», «visible», «prerender», «unloaded»). ).

Это было бы недостаточно без события, которое мы могли бы прослушать, поэтому API также предоставляет полезное событие visibilitychange.

Итак, вот базовый c пример того, как мы можем принять меры при изменении видимости:

function handleVisibilityChange() {
  if(document.hidden) {
    // the page is hidden
  } else {
   // the page is visible
  }
}

document.addEventListener("visibilitychange", handleVisibilityChange, false);

Ссылка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...