zoukankan      html  css  js  c++  java
  • h5之获取朝向和定位

    h5之获取朝向和定位

    定位:

    通过h5中的getCurrentPosition()方法可以获取到移动设备定位的经纬度

        function getLocation() {
            var that = this
            if (navigator.geolocation) {
                navigator.geolocation.getCurrentPosition(function (position) {
                    alert('经度:'+ position.coords.latitude)
                    alert('纬度:'+ position.coords.longitude)
                }, function (error) {
                    console.log(error)
                    switch (error.code) {
                        case error.PERMISSION_DENIED:
                            alert('用户拒绝对获取地理位置的请求。')
                            break;
                        case error.POSITION_UNAVAILABLE:
                            alert('位置信息是不可用的。')
                            break;
                        case error.TIMEOUT:
                            alert('请求用户地理位置超时。')
                            break;
                        case error.UNKNOWN_ERROR:
                            alert('未知错误。')
                            break;
                    }
                }, { enableHighAcuracy: false });
            } else {
                alert('Geolocation is not supported by this browser.')
            }
        }

    在getCurrentPosition()的api中可以获取到heading属性,其为手机的朝向。但经过测试,获取到的朝向值为null或者0.

    所以朝向需要通过另一种方法获取。

    朝向:

    朝向的获取可以通过监听手机陀螺仪的数据变化获取:

        window.addEventListener('deviceorientation', function(e){
            console.log('absolute: ' + e.absolute)
            console.log('alpha: ' + e.alpha)
            console.log('beta: ' + e.beta)
            console.log('gamma: ' + e.gamma)
        }, false);

    其中alpha值,即为水平方向上的手机朝向。

    钻研不易,转载请注明出处......

  • 相关阅读:
    一个Bean属性拷贝的工具类
    java Integer parseInt()
    sql 预编译 in
    显著性图谱的评价
    如何优雅的在MFC中使用cvSetMouseCallback?
    为MFC界面添加一个Log Window
    最大流算法统计
    2014年秋 求职总结
    图论的常用算法
    常用的排序算法
  • 原文地址:https://www.cnblogs.com/s313139232/p/13074083.html
Copyright © 2011-2022 走看看