Что означает «инициированный жестом пользователя».в element.requestFullscreen () API? - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь использовать elem.requestFullscreen API, но я получаю эту ошибку (на Chrome 70 в Ubuntu, не тестировалась в других браузерах):

Не удалось выполнить requestFullscreen на«Элемент»: API может быть инициирован только жестом пользователя.

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

Но в моем случае у меня есть кнопка с событием щелчка.Как событие клика не является «жестом пользователя»?Я посмотрел на этот ответ .

Вот мой код:

let button = document.getElementById('toggle')

button.addEventListener('click', function ()
{
  let elem = document.getElementById('fullscreen')
   
  if (elem.requestFullscreen) {
    elem.requestFullscreen()
  } else if (elem.mozRequestFullScreen) { /* Firefox */
    elem.mozRequestFullScreen()
  } else if (elem.webkitRequestFullscreen) { /* Chrome, Safari and Opera */
    elem.webkitRequestFullscreen()
  } else if (elem.msRequestFullscreen) { /* IE/Edge */
    elem.msRequestFullscreen()
  }
})
<button id="toggle">
Toggle
</button>

<div id="fullscreen">
fullscreen content
</div>

https://jsfiddle.net/svierkant/15buv80z/9/

Что в данном случае означает «пользовательский жест»?Как я могу переключить полноэкранный режим с событием щелчка?

1 Ответ

0 голосов
/ 08 декабря 2018

Проблема с расширением Chrome (Ghostery - Privacy Ad Blocker).После отключения расширения API requestFullscreen снова заработал.

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