指南针
利用设备方向传感器的电子罗盘
方向
什么是指南针?
指南针通过设备方向传感器实时显示航向角度与基本方位。授权位置后,还会标出指向麦加的朝拜方向、显示当地经纬度与海拔,并给出今日的日出日落时间。
页面会读取设备陀螺仪和磁力计的 alpha 角度(iOS 上使用 webkitCompassHeading),每秒重绘罗盘约 60 次,所以指针能跟住你的实际朝向。点「校准」可以抵消几度的传感器漂移;若想按真北而非磁北读方位,把「北向基准」切到真北并填入本地磁偏角即可。
使用方法
- 当设备提示时,允许传感器权限
- 将设备平放 — 指南针指针指向北方
- 读取度数(0°–360°)和方位(北、东北、东等)
何时使用
- 徒步时手里只有一张纸质地图,需要对准方向找出正北。
- 安装卫星锅、太阳能板或天线时,把设备调到指定方位角。
- 看房或租房前先确认窗户和阳台的朝向。
结果
225° 表示您面朝西南方 — 指南针指针指向北方,而您面朝西南。
常见问题
- 为什么在电脑或笔记本上读数不动?
- 台式机和大多数笔记本没有磁力计,deviceorientation 事件根本不会传回可用数据。需要带罗盘硬件的手机或平板。Chrome 上可以尝试 USB 传感器扩展,但常见做法是直接在手机上打开页面。
- 手机罗盘和真正的磁罗盘相比有多准?
- 现代手机的磁力计校准之后通常误差在 2 到 5 度之内。靠近金属家具、汽车车身、音箱或磁铁时精度会下降,所以遇到指针漂移时,走到空旷处把手机做 8 字形旋转重新校准。
- 显示的是真北还是磁北?
- 手机罗盘默认返回的是磁北。磁偏角随纬度变化,赤道附近可能不到 1 度,高纬度地区超过 20 度。把「北向基准」切到真北,再填入本地磁偏角(东为正、西为负),方位就会按真北显示。
- 为什么 Safari 每次都要求授权?
- iOS 13 之后,苹果要求每次加载页面都必须有用户手势(点击「开始」)才允许网页读取方向数据。授权不会跨会话保留。这是系统层面的隐私限制,网页无法绕过。
- 没有网络能用吗?
- 页面加载完成之后可以。读数来自设备自带的传感器,使用期间不会请求服务器。如果把页面保存离线访问或者把站点装成 PWA,飞行模式下罗盘照样可用。