zoukankan      html  css  js  c++  java
  • 设备重力感应 window.DeviceOrientationEvent

    设备屏幕方向与运动 https://developers.google.cn/web/fundamentals/native-hardware/device-orientation/

    MDN deviceorientation文档 https://developer.mozilla.org/zh-CN/docs/Web/Events/deviceorientation

    设备动作和方向事件可访问移动设备上的内置加速度计、陀螺仪和罗盘

    Alpha 围绕 Z 轴的旋转
    Beta 围绕 X 轴的旋转
    Gamma 围绕 Y 轴的旋转

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <!-- Chrome, Firefox OS and Opera -->
      <meta name="theme-color" content="#ff4081">
      <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
      <link rel="manifest" href="/manifest.json">
      <title>Ajanuw</title>
      <style>
        #img {
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-50%,-50%);
          transition: transform 1;
           120px;
          height: 120px;
          background-image: url(http://per.kelantu.com/photos/1515232896-FnIf9c57Hf1-l7DUdBwlXdN1bcLv-ng0?e=3153600000&token=CT86R8zZYVXDyHWEWFoMX4pz0ksOzxtKCaC80si4:ZodhYJxq7jbwaeeCe_r_9de7Nf4=);
          background-image: image-set(
            url(http://per.kelantu.com/photos/1515232896-FnIf9c57Hf1-l7DUdBwlXdN1bcLv-ng0?e=3153600000&token=CT86R8zZYVXDyHWEWFoMX4pz0ksOzxtKCaC80si4:ZodhYJxq7jbwaeeCe_r_9de7Nf4=) 1x,
            url(http://per.kelantu.com/photos/1514437475-FlTozLVMxiq8Ctx0Mbh8G5Hc6hvk-ng0?e=3153600000&token=CT86R8zZYVXDyHWEWFoMX4pz0ksOzxtKCaC80si4:0Jf5nGsPWg5WhNUgQJisyMcGiaQ=) 2x
          );
          background-image: -webkit-image-set(
            url(http://per.kelantu.com/photos/1515232896-FnIf9c57Hf1-l7DUdBwlXdN1bcLv-ng0?e=3153600000&token=CT86R8zZYVXDyHWEWFoMX4pz0ksOzxtKCaC80si4:ZodhYJxq7jbwaeeCe_r_9de7Nf4=) 1x,
            url(http://per.kelantu.com/photos/1514437475-FlTozLVMxiq8Ctx0Mbh8G5Hc6hvk-ng0?e=3153600000&token=CT86R8zZYVXDyHWEWFoMX4pz0ksOzxtKCaC80si4:0Jf5nGsPWg5WhNUgQJisyMcGiaQ=) 2x
          );
        }
      </style>
    </head>
    
    <body>
      <div id="doeSupported"></div>
      <div id="doc"></div>
      <div id="img"></div>
      <script type="text/javascript">
      let w =  window.innerWidth;
      let h =  window.innerHeight;
    
      let ww = w / 170;
      let hh = h / 90;
        function set2(num){
          if(num){
            return num.toFixed(2);
          }
          return null;
        }
        function deviceOrientationHandler(e) {
          console.log( e);
          var doc = `
           Z 轴的旋转 => ${set2(e.alpha)};<br/>
           X 轴的旋转 => ${set2(e.beta)};<br/>
           Y 轴的旋转 => ${set2(e.gamma)};<br/>
          `;
          document.getElementById("doc").innerHTML = doc;
          update(e.beta, e.gamma, e.alpha);
        }
        function update(x,y,z){
          document.getElementById("img")
          .style.transform = `translate(${(y*ww)-60}px, ${(x*hh)-60}px) rotate(${z - 90}deg)`;
        }
    
        if (window.DeviceOrientationEvent) { // 设备方向
          window.addEventListener('deviceorientation', deviceOrientationHandler, false);
          document.getElementById("doeSupported").innerText = "Supported!";
        }
    
        function deviceMotionHandler(e) {
          console.log( e.acceleration);// 加速度
        }
    
        if(window.DeviceMotionEvent){ // 设备动作
          window.addEventListener('devicemotion', deviceMotionHandler);
        }
      </script>
    </body>
    
    </html>
    
  • 相关阅读:
    实用的css3小实例---1、卡片效果
    CSS3疑难问题---1、px、em、rem的区别
    心得体悟帖---200106(录课本质)(工具人)
    心得体悟帖---200105(心性不够容易失去)
    心得体悟帖---200105(legend3做好升段)(还不够厉害)
    心得体悟帖---200104(每天运动)(危急存亡)
    webstorm2019.2永久破解教程(亲测有效)
    范仁义css3课程---6、文本样式1
    范仁义css3课程---7、文本2(css3文本)
    css文本样式总结
  • 原文地址:https://www.cnblogs.com/ajanuw/p/8391854.html
Copyright © 2011-2022 走看看