0

我正在创建一个跟踪您的海拔高度的应用程序。目前,IOS 是唯一支持 Altitude 参数的设备之一,因此让它在移动 Safari 中运行至关重要。高度将打印在页面上的两个位置,一个文本元素和一个仪表元素,因此可以直观地表示您当前的高度。

生成高度不是问题,但是我没有成功地将高度存储在仪表的值中。需要注意的是,Mobile Safari 不支持 Meter 元素,所以我使用 polyfill 来让它工作。

您可以在这里大致了解我要做什么:http: //jsfiddle.net/qF9hh/

请注意,地理位置坐标已被注释掉,但如果您要在 IOS 设备上对其进行测试,它们确实可以工作。

所以我的问题是,如何将海拔坐标存储在仪表中?

4

1 回答 1

1

这样的事情可能会更好

var worked = false;
$("button").click(function () {
    worked = false;
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(success, error);
    } else {
        error('not supported');
    }
}).load();​
function error(msg){
    alert(typeof(msg) = "string" ? msg : "error!");
}
function success(pos){
    if(worked)return; // to prevent firing twice in firefox
    worked = true;
    var meter = $("#high");
    if(pos.altitude === null){
        error("Altitide not supported");
        return;
    }
    meter.val(pos.altitude);
    meter.text(pos.altitude + "/" + meter.attr("max"));
}

提琴手

于 2012-04-08T01:17:03.557 回答