设置浏览器横屏可行性测试,附带浏览器全屏功能

输入法问题:
1、QQ浏览器、UC浏览器可通过标签设置横屏(这种模式下输入法也是横屏状态)

    
    
    
    
    

2、下面方法测试在华为浏览器可行,在微信和QQ浏览器中无效
通过screen.orientation可以定义手机屏幕的方向
但是lock()方法仅在浏览器已经通过requestFullscreen()切换到全屏模式时起作用

    /** 全屏切换 */
    public static FullScreenSwitch() {
        // // Laya 自带全屏功能
        // Laya.stage.fullScreenEnabled = (true);

        var document = Laya.Browser.document;
        var documentElement = document.documentElement;

        if(document.fullscreenEnabled || document.msFullscreenEnabled || document.webkitFullscreenEnabled || document.mozFullScreenEnabled|| document.webkitFullscreenEnabled){

            if(document.fullscreenElement || document.webkitFullScreenElement || document.mozFullScreenElement || document.msFullScreenElement){
                if(document.exitFullScreen) {
                    document.exitFullScreen();
                //兼容Firefox
                } else if(document.mozCancelFullScreen) {
                    document.mozCancelFullScreen();
                //兼容Chrome, Safari and Opera等
                } else if(document.webkitExitFullscreen) {
                    document.webkitExitFullscreen();
                //兼容IE/Edge
                } else if(documentElement.msExitFullscreen) {
                    documentElement.msExitFullscreen();
                }
            }else{
                // 全屏调用
                // msRequestFullscreen:兼容火狐   webkitRequestFullScreen:兼容Chrome, Safari and Opera等   兼容IE/Edge,只能写msRequestFullscreen
                var rfs = documentElement.requestFullScreen ||  documentElement.requestFullscreen || documentElement.webkitRequestFullScreen || documentElement.webkitRequestFullscreen|| documentElement.mozRequestFullScreen|| documentElement.mozRequestFullscreen || documentElement.msRequestFullscreen|| documentElement.msRequestFullScreen || documentElement.oRequestFullScreen|| documentElement.oRequestFullscreen;
                if (typeof rfs != "undefined" && rfs) {
                    rfs.call(documentElement);

                    var orientation = Laya.Browser.window.screen.orientation    ||
                    Laya.Browser.window.screen.mozOrientation ||
                    Laya.Browser.window.screen.msOrientation  ||
                    null;
        
                    orientation.lock("landscape-primary");
                }
            }
        }else{
            alert('没用有能力全屏显示元素并且不支持全屏显示')
        }
    }

3、微信浏览器无权限进行相关设置以上设置在微信中无用
1、微信浏览器是基于微信APP的网页,是否全屏在微信中设置。
2、小程序小游戏可以通过json文件中配置"pageOrientation": “landscap” “deviceOrientation”:“landscape” 设置横屏
(官方回答:目前暂时不支持网页应用横竖屏切换的接口)
https://developers.weixin.qq.com/community/enterprisewechat/doc/0006ac16be8ce8d6192b4bc5256800?ivk_sa=1024320u

4、也没有相关控制设置输入法的API

5、IOS使用上面方法暂不可行

根据以上问题,还是要做个功能完善的虚拟键盘功能(时间问题)。

你可能感兴趣的:(HTML,【Unity,+,Laya】,Laya,html5)