ajax调用的纬度和经度 - Html5

时间:2015-11-06 02:57:41

标签: javascript jquery ajax html5

我试图让用户获得当前的纬度和经度,并在ajax调用中使用它。 我有一系列城市和函数来获取用户的位置,但不知何故变量没有得到任何价值。

以下是一些代码:

function getLng(){
navigator.geolocation.getCurrentPosition(lng, error);
}

 function getLat(){
navigator.geolocation.getCurrentPosition(lat, error);
}

function error(err){
console.warn('Error('+err.code+'):'+err.message);
}


function lat(position){
var crd = position.coords;
return crd.latitude;
}

 function lng(position){
  var crd = position.coords;
  return crd.longitude;
}

我的目标是这样的:

 {
id:'currentLocation',
name:'Current Location',
lat: getLat(),
lng: getLng(),
lastUpdated: -1,
weatherData: null
}

我的ajax电话是这样的: function getWeatherDataForCityId(city){

$.ajax({
url: 'https://api.forecast.io/forecast/<apikey>/' + city.lat +","+city.lng+"?units=si",
jsonp:'callback', 
dataType:'jsonp', 
success:function(data){
(stuff...)

我不知道为什么,但是city.lat继续作为“未定义的”#。

我允许浏览器分享我的位置。(我在Firefox上)

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

这就是你需要使用getCurrentPosition

的方法
$.datas.*.*[?(@>1000)]