地理位置标题 API 实际上没有测量标题?



我正在尝试测量用户航向并使用数据来旋转我制作的指南针图像。它应该导致图像连续指向北方,因此当用户移动手机时,图像会随之移动。然而,标题值完全是自己跳跃的,就像我放下手机一样,标题会自行移动大量。我在手机上下载了一个指南针应用程序(这是我正在测试它的应用程序(,指南针很好。

这就是我放入 HTML 的方式

<div id="compass">
<img id="compassIMG" src="Morgsimages/compassIcon.png">
</div>
<div id="compassInfo"></div>

这是我的JavaScript

navigator.geolocation.watchPosition(position => {
let heading = position.coords.heading;
var compass = document.getElementById('compass');
var info = document.getElementById('compassInfo');
info.textContent = 'Heading: '+heading;
compass.style.transform = `rotate(${heading}deg)`

不幸的是,这取决于设备,coords.heading.如果此信息不可用,它将返回 null。

根据 https://developer.mozilla.org/en-US/docs/Web/API/GeolocationCoordinates/heading 的说法,"如果设备无法提供航向信息,则此值为空。

最新更新