繁体   English   中英

全屏HTML javascript JavaScript

[英]HTML javascript fullscreen

我在尝试向应用程序中的元素添加全屏功能时遇到问题。

我基本上是这样的:

    var launchFullScreen = function (element) {
    if(element.requestFullScreen) {
        element.requestFullScreen();
    } 
    else if(element.mozRequestFullScreen) {
        element.mozRequestFullScreen();
    } 
    else if(element.webkitRequestFullScreen) {
        element.webkitRequestFullScreen();
    }
};

var cancelFullscreen = function() {

    if(document.cancelFullScreen) {
        document.cancelFullScreen();
    } 
    else if(document.mozCancelFullScreen) {
        document.mozCancelFullScreen();
    } 
    else if(document.webkitCancelFullScreen) {
        document.webkitCancelFullScreen();
  }

};

$("#view").on("keypress", function(event){
    if(event.which == 27){
        cancelFullscreen();
    }
});

$("#view").on("click", function(event){
    console.log("view clicked");
    launchFullScreen($("#view")); 
});

我看不到我在做什么错。 有什么建议么?

我相信您是在jQuery包装元素上调用全屏显示,而不是元素本身。 尝试以下方法:

launchFullScreen($("#slideView").get(0));

这是一个解决方案:

var
view = document.querySelector("#view"),
launchFullscreen = function(element){
  var domPrefixes = 'webkit moz o ms khtml'.split(' '), i = 0, prefix = null;
  while(!(prefix = previewFrame[domPrefixes[i] + 'RequestFullScreen'])){ i++; }
  prefix.apply(element);
},
cancelFullscreen = function(){
  var domPrefixes = 'webkit moz o ms khtml'.split(' '), i = 0, prefix = null;
  while(!(prefix = previewFrame[domPrefixes[i] + 'CancelFullScreen'])){ i++; }
  prefix.apply(document);
};

view.addEventListener('click', function(){
  launchFullscreen(this);
});

view.addEventListener("keypress", function(event){
  if(event.which == 27){ cancelFullscreen(); }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM