我听说过开放的Google WebServices,即地图,我想知道谷歌的时间,货币和其他功能有类似的东西。 关于时间我发现了一个类似的问题,但我想要一些商业用途的解决方案: How to get the current time in any location 哦,我想通过AJAX(客户端)来调用它。
这个想法是在世界各地的一些城市提供下拉列表,一旦选择了城市,应该显示城市的当地时间。我遇到了一个问题,找到一个算法来包含所有不同的Summertime-Changes,所以这种方法似乎更容易。
答案 0 :(得分:4)
使用HTML5 geolocation API,您可以获得当前的纬度/长度坐标:
var currentPosition;
navigator.geolocation.getCurrentPosition(function(position) {
currentPosition = position;
});
您可以使用此功能在帖子中提及ajax request到the web service:
$(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',这是一个小时限制)。