• 检测手机横竖屏切换


    我们做移动端项目的时候,为了更好的完善用户体会,经常会需要处理好手机横竖屏时候的效果,下面看一下通过代码如何判断手机是否是横竖屏,两种方式:

    一、第一种方式:

    <style type="text/css">
    body,
    html {
    margin: 0;
    height: 100%;
    position: relative;
    overflow: hidden;
    }
    #box {
    100%;
    height: 100%;
    font-size: 20px;
    position: relative;
    }
    #div {
    100px;
    height: 100px;
    background: red;
    }
    #pop {
    display: none;
    position: absolute;
    left: 0;
    top: 0;
    100%;
    height: 100%;
    background: #000;
    color: #fff;
    line-height: 200px;
    font-size: 30px;
    text-align: center;
    }
    </style>
    </head>
    <body>
    <div id="box">
    请保持竖屏观看哟
    <div id="div"></div>
    </div>
    <div id="pop">请不要横屏浏览页面</div>
    <script type="text/javascript">
    setChange();
    window.addEventListener('orientationchange', function(e)
    {
    setChange()
    });
    function setChange(){
    var pop = document.querySelector('#pop');
    if(window.orientation == 90 || window.orientation == -90)
    {
    pop.style.display = "block";
    } else {
    pop.style.display = "none";
    }
    }
    </script>

    二、第二种方式
    <style type="text/css">
    body,
    html {
    margin: 0;
    height: 100%;
    position: relative;
    overflow: hidden;
    }
    #box {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 20px;
    position: relative;
    }
    #div {
    100px;
    height: 100px;
    background: red;
    }
    </style>
    </head>
    <body>
    <div id="box">
    请保持竖屏观看哟
    <div id="div"></div>
    </div>
    <div id="pop">请不要横屏浏览页面</div>
    <script type="text/javascript" src="m.Tween.js"></script>
    <script type="text/javascript">
    setStyle()
    setChange();
    window.addEventListener('orientationchange', function(e)
    {
    setChange();
    });
    function setStyle(){
    var box = document.querySelector('#box');
    var w = window.screen.width;
    var h = window.screen.height;
    box.style.width = w + "px";
    box.style.height = h + "px";
    box.style.margin = -h/2 + "px 0 0 "+(-w/2)+"px";
    }
    function setChange(){
    var box = document.querySelector('#box');
    if(window.orientation == 90 || window.orientation == -90)
    {
    css(box,"rotate",90);
    } else {
    css(box,"rotate",0);
    }
    }
    </script>

    分享技术,分享快乐!
  • 相关阅读:
    关于postman使用上发现的一点问题
    关于异步的处理方法
    关于console.log() 打印得引用类型得数据得相关问题
    使用electron将单页面vue webapp 打包成 PC端应用
    当后台只接受字符串得时候,在传输复杂得数据得时候会发生得问题
    默认事件
    事件冒泡
    offsetWidth clientWidth scrollWidth 三者之间的区别和联系
    事件获取目标 currentTarget target srcElement三者之间的区别和联系
    不支持模块化规范的插件可以使用import 导入的原因
  • 原文地址:https://www.cnblogs.com/babywin/p/6420692.html
Copyright © 2020-2023  润新知