JavaScript如何实现全屏和退出全屏事件-创新互联
这篇文章给大家分享的是有关JavaScript如何实现全屏和退出全屏事件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

代码如下:
window.isflsgrn = false;//ie11以下是否进入全屏标志,true为全屏状态,false为非全屏状态
window.ieIsfSceen = false;//ie11是否进入全屏标志,true为全屏状态,false为非全屏状态
//跨浏览器返回当前 document 是否进入了可以请求全屏模式的状态
function fullscreenEnable(){
var isFullscreen = document.fullscreenEnabled ||
window.fullScreen ||
document.mozFullscreenEnabled ||
document.webkitIsFullScreen;
return isFullscreen;
}
//全屏
var fScreen = function(){
var docElm = document.documentElement;
if (docElm.requestFullscreen) {
docElm.requestFullscreen();
}
else if (docElm.msRequestFullscreen) {
docElm.msRequestFullscreen();
ieIsfSceen = true;
}
else if (docElm.mozRequestFullScreen) {
docElm.mozRequestFullScreen();
}
else if (docElm.webkitRequestFullScreen) {
docElm.webkitRequestFullScreen();
}else {//对不支持全屏API浏览器的处理,隐藏不需要显示的元素
window.parent.hideTopBottom();
isflsgrn = true;
$("#fsbutton").text("退出全屏");
}
}
//退出全屏
var cfScreen = function(){
if (document.exitFullscreen) {
document.exitFullscreen();
}
else if (document.msExitFullscreen) {
document.msExitFullscreen();
}
else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
}
else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
}else {
window.parent.showTopBottom();
isflsgrn = false;
$("#fsbutton").text("全屏");
}
}
//全屏按钮点击事件
$("#fsbutton").click(function(){
var isfScreen = fullscreenEnable();
if(!isfScreen && isflsgrn == false){
if (ieIsfSceen == true) {
document.msExitFullscreen();
ieIsfSceen = false;
return;
}
fScreen();
}else{
cfScreen();
}
})
//键盘操作
$(document).keydown(function (event) {
if(event.keyCode == 27 && ieIsfSceen == true){
ieIsfSceen = false;
}
});
//监听状态变化
if (window.addEventListener) {
document.addEventListener('fullscreenchange', function(){
if($("#fsbutton").text() == "全屏"){
$("#fsbutton").text("退出全屏");
}else{
$("#fsbutton").text("全屏");
}
});
document.addEventListener('webkitfullscreenchange', function(){
if($("#fsbutton").text() == "全屏"){
$("#fsbutton").text("退出全屏");
}else{
$("#fsbutton").text("全屏");
}
});
document.addEventListener('mozfullscreenchange', function(){
if($("#fsbutton").text() == "全屏"){
$("#fsbutton").text("退出全屏");
}else{
$("#fsbutton").text("全屏");
}
});
document.addEventListener('MSFullscreenChange', function(){
if($("#fsbutton").text() == "全屏"){
$("#fsbutton").text("退出全屏");
}else{
$("#fsbutton").text("全屏");
}
});
}值得注意的是 fullscreenEnabled 参数,网上的说法不一,有的说是监控浏览器是否进入了可以请求全屏模式的状态,有的说只是一个判断浏览器是否支持全屏的标志,实际使用时也确实出现了问题,IE11不能识别这个属性,需要自己单独设置一个标记来控制IE11当前是否为全屏状态。
感谢各位的阅读!关于“JavaScript如何实现全屏和退出全屏事件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章标题:JavaScript如何实现全屏和退出全屏事件-创新互联
本文链接:http://www.jxjierui.cn/article/pphcj.html


咨询
建站咨询
