我一直在尋找這個答案一段時間,但我並沒有真正得到任何地方。我的問題是關於計算機上的Chrome應用程序內部的webview,而不是Android。如果我在webview中嵌入了html5視頻,全屏按鈕不起作用。所有其他的視頻控制工作正常。我已經做了一些搜索,人們都說webview並不完全支持html5 API。這仍然是這樣嗎?我看到的答案相當陳舊,而且我最近無法找到任何東西。在chrome的webview中無法全屏顯示html5視頻
任何建議/答案將不勝感激!謝謝!
我一直在尋找這個答案一段時間,但我並沒有真正得到任何地方。我的問題是關於計算機上的Chrome應用程序內部的webview,而不是Android。如果我在webview中嵌入了html5視頻,全屏按鈕不起作用。所有其他的視頻控制工作正常。我已經做了一些搜索,人們都說webview並不完全支持html5 API。這仍然是這樣嗎?我看到的答案相當陳舊,而且我最近無法找到任何東西。在chrome的webview中無法全屏顯示html5視頻
任何建議/答案將不勝感激!謝謝!
它從版本43支持html5全屏,您可以使用全屏權限API: 請參閱event-permissionrequest和FullscreenPermissionRequest。 基本上,你要 「允許()」 的許可,某事像:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'fullscreen') {
e.request.allow();
}
});
除了通過設置全屏許可,允許它的lazyboy的回答是:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'fullscreen') {
e.request.allow();
}
});
也可能需要將web視圖尺寸本身設置爲屏幕尺寸,因爲有時HTML5視頻可能僅在web視圖(而不是屏幕)內全部顯示。可以這樣做:
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尺寸返回到所需的尺寸。
順便說一下,在調用webkitfullscreenchange'時,'chrome.app.window.current()。isFullscreen()'已經是false了,你必須這樣做:'if(!chrome.app.window.current())。 isFullscreen())//全屏,使用屏幕尺寸作爲webview的高度和寬度 } else { //非全屏,使用原始webview尺寸 } – bithavoc
謝謝!我會試一試! –