全屏在Safari中无效

时间:2018-06-13 08:29:47

标签: javascript safari

全屏幕正在使用Chrome和其他浏览器,但无法在Safari中使用。这是我的代码:

var doc = window.document;
var docEl = document.getElementById("divId");      
//doc.documentElement;

var requestFullScreen = docEl.requestFullscreen || docEl.mozRequestFullScreen || docEl.webkitRequestFullScreen || docEl.msRequestFullscreen;
var cancelFullScreen = doc.exitFullscreen || doc.mozCancelFullScreen || doc.webkitExitFullscreen || doc.msExitFullscreen;

if(!doc.fullscreenElement && !doc.mozFullScreenElement && !doc.webkitFullscreenElement && !doc.msFullscreenElement){
  requestFullScreen.call(docEl);
} else { 
  cancelFullScreen.call(doc);
}    
<div id="divId" style="width: 300px;height:60px" > FULL SCREEN </div>

2 个答案:

答案 0 :(得分:2)

全屏API iOS Safari 不支持,并且在Safari中部分支持 more on this

我建议在Fullscreen API周围查看 Sindre的跨浏览器包装 screenfull.js ,至少 check out the source < / strong>并获得您当前项目所需的内容。

如果您创建网络应用,则用户将安装 here you can find out more about certain meta tags 以指定全屏运行您的网络应用。< / p>

答案 1 :(得分:1)

完整 s 屏幕中的Element.webkitRequestFullscreen,小写s
只有Firefox确实用带有驼峰的 FullScreen 设置了以供应商为前缀的版本,这可能会让每个人的生活更加艰难......

var requestFullScreen = docEl.requestFullscreen || docEl.webkitRequestFullscreen || docEl.mozRequestFullScreen ||  docEl.msRequestFullscreen;

As a fiddle since StackSnippets' iframes don't allow fullscreen