Google maps 谷歌地图加载位置
可能重复:Google maps 谷歌地图加载位置,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,可能重复: 我有一个地图,我想用90210作为邮政编码加载…警报作为调试工具在那里..警报给我坐标,但我得到“myOptions未定义”错误 var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var lat = ''; var lng = ''; var address = '90210'; geocoder.geocode( { '
我有一个地图,我想用90210作为邮政编码加载…警报作为调试工具在那里..警报给我坐标,但我得到“myOptions未定义”错误
var geocoder;
var map;
function initialize() {
geocoder = new google.maps.Geocoder();
var lat = '';
var lng = '';
var address = '90210';
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
lat = results[0].geometry.location.lat();
lng = results[0].geometry.location.lng();
//alert(lat + ', ' + lng);
} else {
alert("Geocode was not successful for the following reason: " + status);
};
var latlng = '(' + lat + ', ' + lng + ')';
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
alert(latlng);
});
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
您可以在geocoder.geocode中的匿名函数中创建myOptions。因此,在没有该函数的情况下,它对代码不可用。如果在initialize函数的顶部声明var myOptions,那么它应该可以工作:
var geocoder;
var map;
function initialize() {
geocoder = new google.maps.Geocoder();
var lat = '';
var lng = '';
var address = '90210';
var myOptions;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
lat = results[0].geometry.location.lat();
lng = results[0].geometry.location.lng();
//alert(lat + ', ' + lng);
} else {
alert("Geocode was not successful for the following reason: " + status);
};
var latlng = '(' + lat + ', ' + lng + ')';
myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
alert(latlng);
});
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
这是一个有点重复的问题。。这里回答:[[1]:“副本”是不同的,不应该关闭。