Следующая переменная my_cords не определена, когда она попадает на функцию Google Maps, может ли кто-нибудь понять, почему и возможно дать мне работу? Я определил его на самом верху и установить его внутри функции обратного вызова, который я видел работу глобальных переменных до ..Очень странная проблема с Javascript
$(document).ready(function() {
var my_cords;
var map;
function getCareHome() {
geocoder = new google.maps.Geocoder();
//var address = document.getElementById("address").value;
var address = "address here";
geocoder.geocode({ 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
my_cords = results[0].geometry.location;
} else {
alert("Sorry we couldn't locate the carehome on the map: " + status);
return false;
}
});
var myOptions = {
zoom: 7,
center: my_cords,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
getCareHome();
});
Не рекомендуется использовать форму 'var createMap = function ...'. Кроме этого, +1. –
@ T.J.Crowder lol, как еще вы бы создали обратный вызов? – Neal
@ Neal: 'function createMap' Я бы использовал объявление функции, поскольку OP имеет' getCareHome', а не выражение функции. –