Я пытаюсь использовать position.coords во внешней области за пределами функции, но я не могу переместить значения в одну глобальную переменную для вызова вне области функции.Я пробовал много решений, включая переменные окна.В этом случае геолокализация, новый google.maps.LatLng (iplat, iplong) является нулевым.Может кто-нибудь предложить способ поместить position.coords вне функции getLocation scope.
function getLocation(position)
{
window.iplat = parseFloat(position.coords.latitude);
window.iplong = parseFloat(position.coords.longitude);
}
function errorFunction(position) {
alert('Error!');
}
var geocoder;
var address;
var userlocation;
var curloc;
google.load("maps",'3',{other_params:'sensor=true'});
google.setOnLoadCallback(function()
{
if (google.loader.ClientLocation)
{
geocoder = new google.maps.Geocoder();
//html5
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(getLocation);
}
else
{
curloc = google.loader.ClientLocation;
iplat=parseFloat(curloc.latitude);
iplong=parseFloat(curloc.longitude);
}
var latlng = new google.maps.LatLng(iplat, iplong);
if (geocoder) {
geocoder.geocode({'latLng': latlng},function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]){
country_code=results[1]....;
}
} else {
alert("Geocoder failed due to: " + status);
}
});
}
alert(country_code+":"+iplat+"||"+iplong); <--- NULL VALUES
}
});