2011-12-20 92 views
2

我知道这只是最近才推出的,所以如果我使用它,我该如何测试浏览器是否支持它?webkit和mozilla全屏模式

如果我做了类似以下的事情,我相信我正在测试浏览器是否处于全屏模式而不是浏览器是否提供了功能?

function FullScreenSupported() { 
    if (document.webkitIsFullScreen) { 
    alert("webkitIsFullScreen is supported");/ 
    } else { 
    alert("webkitIsFullScreen is not supported"); 
    } 
} 

Mozilla对全屏模式的介绍如下:Using fullscreen mode – AutoCompatibilityTable

+1

我解决这个为:document.webkitIsFullScreen!= null – martin 2011-12-21 09:31:05

+0

你可以回答自己的问题,你知道:) – Joey 2012-05-24 08:04:09

+0

但该解决方案只适用于webkit浏览器 – franzlorenzon 2013-03-28 10:04:14

回答

0

我发现here这个函数使用Modernizr来做到这一点。

我重构代码,使其不Modernizr的工作太:

function FullScreenSupported() { 
    var ancelFullScreen = 'ancelFullScreen'; 

    // FF9 pre-check 
    if(document.mozCancelFullScreen && !document.mozFullScreenEnabled) { 
     return false; 
    } 

    domPrefixes = [ 'moz', 'webkit' ]; 

    var limit = domPrefixes.length; 

    for(var i = 0; i < limit; ++i) { 
     if(document[domPrefixes[i].toLowerCase() + 'C' + ancelFullScreen]) 
      return true; 
    } 

    return !!document['c' + ancelFullScreen] || false; 
}; 

我已经在Firefox 19,铬25,Safari 5的,IE8测试,它似乎工作:)