gpt4 book ai didi

javascript - element.requestFullscreen() API 中的 'initiated by a user gesture.' 是什么意思?

转载 作者:行者123 更新时间:2023-12-01 15:17:42 27 4
gpt4 key购买 nike

我正在尝试使用 elem.requestFullscreen API,但我收到此错误(在 Ubuntu 上的 Chrome 70 上,未在其他浏览器上测试):

Failed to execute 'requestFullscreen' on 'Element': API can only be initiated by a user gesture.



这看起来像是一条明确的错误消息。我很高兴浏览器阻止开发人员在没有用户交互的情况下触发全屏事件。

但就我而言,我有一个带有点击事件的按钮。点击事件如何不是“用户手势”?我看过 this answer .

这是我的代码:

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/

在这种情况下,究竟什么是“用户手势”?如何通过点击事件切换全屏?

最佳答案

Chrome 扩展程序(Ghostery – 隐私广告拦截器)是问题所在。禁用扩展后,requestFullscreen API 再次正常工作。

关于javascript - element.requestFullscreen() API 中的 'initiated by a user gesture.' 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53672442/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com