我一直在寻找这个答案,但我并没有真正得到任何答案。我的问题是关于计算机上的chrome应用程序内的webview,而不是Android。如果我在webview中有任何嵌入的html5视频,则全屏按钮不起作用。所有其他视频控件都正常工作。我做了一些搜索,人们说webview并不完全支持html5 API。这仍然是这样吗?我看到的答案相当陈旧,我最近找不到任何东西。
任何建议/答案将不胜感激!谢谢!
答案 0 :(得分:2)
它支持版本43的html5全屏,您可以使用全屏权限API: 请参阅event-permissionrequest和FullscreenPermissionRequest。 基本上,你必须" allow()"许可,就像:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'fullscreen') {
e.request.allow();
}
});

答案 1 :(得分:1)
除了lazyboy的答案,设置全屏权限并允许它:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'fullscreen') {
e.request.allow();
}
});
可能还需要将webview尺寸本身设置为屏幕尺寸,因为有时HTML5视频可能仅在webview内(而不是屏幕)进行全屏显示。这可以这样做:
document.addEventListener('webkitfullscreenchange', function(){
if (chrome.app.window.current().isFullscreen()){
webview.style.height = screen.height + 'px';
webview.style.width = screen.width + 'px';
}
else{
/*get webview to original dimensions*/
};
});
webkitfullscreenchange侦听全屏更改。
如果chrome窗口是全屏chrome.app.window.current().isFullscreen()
,则它将webview宽度和高度分别设置为屏幕宽度和高度。
如果窗口不是全屏,则可以将webview维度返回到所需的位置。