• 手机端始终横屏


    在公司里做的一些业务型项目主要是 H5 类型的游戏呀相册呀动效图之类的,所以总避免不了要去满足那些喜爱横屏的设计稿...

    但比较蛋疼的是,客户并不太爱吃这个瓜。

    “开横屏好麻烦呀...”

    “手机开了横屏还得微信也开横屏...”

    “我...我不看这些...”

    所以...坑总是要填的...

    <!-- uc强制竖屏 -->
    <meta name="screen-orientation" content="portrait">
    <!-- QQ强制竖屏 -->
    <meta name="x5-orientation" content="portrait">

    有搜到这个,但好像并没有卵用,所以就没管了,呵呵呵,我就是这么懒

    所以,换了种思路,既然可以借鉴的没有那就换自己开发吧

    一开始想的是用 @media (orientation : landscape) {} 这种办法,呵呵呵,你试试呗

    不过方向还是挺对的,就是好像旋转的中心不太对,

    于是乎再加上一个根据屏幕横宽比计算中心点的,产生了下面这段飘着浓浓随便口味的代码。

    测试后发现,结果竟然还不错。

    $(window).on('load resize',function(){
        var w = window.innerWidth, h = window.innerHeight;
        var $container = $('.main');
        if (w<h) {
            $container.css({
                'width': h,
                'height': w,
                'transform': 'rotate(90deg)',
                '-webkit-transform': 'rotate(90deg)',
                'transform-origin': w/h/2*100+'% 50%',
                '-webkit-transform-origin': w/h/2*100+'% 50%'
            })
        } else {
            $container.removeAttr('style');
        }
    })

    没错,只需要把 $container 的取值改掉就好了。

    实验的几个手机和浏览器都能做到强制横屏,且与手机设置无关。

    en,这篇就这么开心的结束了。

  • 相关阅读:
    VMware克隆虚拟机,克隆机网卡启动不了解决方案
    实现列表双击可编辑,异步更新;实现删除的即时移除;
    HTTP请求之:PHP函数header常用功能
    MySQL Innodb的两种表空间方式
    MySQL表分区技术
    [java]实体类(VO,DO,DTO,PO)的划分
    [java]框架中为什么用到反射?
    [java]springboot集成mybatis
    [java]servlet乱码问题解决
    [sql]mysql部署
  • 原文地址:https://www.cnblogs.com/foreverZ/p/js-always-landscape.html
Copyright © 2020-2023  润新知