我希望能够捕获地理编码功能之外的标记对象,并且无法弄清楚如何 请帮帮我。
代码:
geocoder.geocode({ address: address },
function(results, status) {
if (status == google.maps.GeocoderStatus.OK && results.length) {
if (status != google.maps.GeocoderStatus.ZERO_RESULTS) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
position: results[0].geometry.location,
map: map
});
}
}
});
提前致谢!
答案 0 :(得分:1)
只需在回调之外声明您的marker
变量,并在回调中为其指定一个值:
var marker = null;
geocoder.geocode({ address: address },
function(results, status) {
if (status == google.maps.GeocoderStatus.OK && results.length) {
if (status != google.maps.GeocoderStatus.ZERO_RESULTS) {
map.setCenter(results[0].geometry.location);
marker = new google.maps.Marker({
position: results[0].geometry.location,
map: map
});
}
}
}
);
但要小心,回调是异步的,因此在触发回调之前,marker
中没有任何有用的东西。