谷歌网络服务,按位置获取时间



可能的重复项:
如何获取任何位置的当前时间

听说过开放的谷歌网络服务,即地图,我想知道谷歌的时间、货币和其他功能是否有类似的内容。关于时间,我发现了一个类似的问题,但我想要一些商业用途的解决方案:如何获取任何位置的当前时间哦,我想用AJAX(客户端)来称呼它。

这个想法是提供一个包含世界各地一些城市的下拉列表,一旦选择一个城市,应该显示该城市的当地时间。我在寻找包含所有各种夏季更改的算法时遇到了问题,因此这种方法似乎更容易。

工作演示

使用 HTML5 地理位置 API,您可以获取当前的经度/经度坐标:

var currentPosition;
navigator.geolocation.getCurrentPosition(function(position) {
    currentPosition = position;
});

您可以使用它向您在帖子中提到的 Web 服务发出 ajax 请求:

$(function(){
    var tzObject;
    $("button").click(function(){
        console.log(currentPosition);
        var dt = "lat="+currentPosition.coords.latitude +
                 "&lng="+currentPosition.coords.longitude +
                 "&username=demo"; //change to your uName
        $.get("http://api.geonames.org/timezoneJSON", dt, function(msg) {
            tzObject = msg;
            alert(tzObject.time + " " + tzObject.timezoneId);
        });
    });        
});

这将返回一个包含相关时区信息的 JSON 对象。当然,如果您有一组城市列表,则很容易存储它们的经度/经度坐标,只需将其用于请求即可。您需要获取一个用户名才能将该 Web 服务用于连续的多个请求(使用"demo",有每小时限制)。

相关内容

  • 没有找到相关文章

最新更新