javascript - JS检测设备方向疑问
PHP中文网
PHP中文网 2017-04-11 09:53:34
[JavaScript讨论组]

<!doctype html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <p id="tip"></p>
    <script>
        window.addEventListener('deviceorientation', function (orientData) {
            document.getElementById('tip').innerHTML = orientData.alpha;
        });
    </script>
</body>
</html>

手机扫描二维码查看效果,现在的效果是进入页面后晃动手机会显示手机X轴的角度信息,到达0度临界值的时候,左右晃动手机角度的变化规律是357,358,359,0,1,2,3以此类推的这种格式,有没有办法更改成到达0度的时候是-3,-2,-1,0,1,2,3,到达359的时候是357,358,359,360,361,362的这种格式呢?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(3)
ringa_lee

谢邀,我没做过,提供一个想法吧你做一个全局变量。你用系统自带的判断是左右移动,然后你给的全局变量做加减。这样不就可以了

黄舟

这个不是很好实现,因为你不知道用户初次打开是处于什么状态,如果不考虑这个因素,可以做个类似分页的效果,比如初始page=1,实时检测动向,比如1-2,认为是+,反之认为是-,如果+的情况,突然减少300多,则是page+1,如果-的情况突然增加300多,则是page-1,不过不排除快速旋转时会出现什么异常,个人没这样尝试过,只说一下想法

迷茫

加个定时器,把几十毫秒之前的数据记录下来,然后到 0 和 360 附近的时候根据之前记录的数据自己调整

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号