在我的移动应用中,我想在用户向上滑动时切换全屏。
因此,当触发touchend
事件时,我会呼叫document.documentElement.webkitRequestFullScreen();
问题是它不适用于移动版Chrome 56+。
这是例子。
https://jsfiddle.net/ibmw/tnncaxj0/6/
有趣的部分是:仅当您在touchstart和touchend之间进行touchmove时,才会出现此问题。
在控制台中,我出现了一个错误:
无法在“元素”上执行“ requestFullscreen”:API只能是
由用户手势启动。
document.documentElement.webkitRequestFullScreen();
有人知道如何挣扎吗?
最佳答案
您必须在touchmove上调用preventDefault()
,然后将new option传递给addEventListener()
。它对我有用:
addEventListener('touchmove', onTouchMove, {passive: false});
function onTouchMove(e) {
e.preventDefault
}
关于javascript - Chrome上的全屏事件在Chrome上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42945378/