我有一个数据库,其中包含准确到建筑物级别的地址。当我将这些手动放入谷歌地图的搜索中时,谷歌地图发现它们没有问题 - 标记出现在正确的建筑物上。但是,当我使用以下代码将这些相同的地址传递给 Google Maps API 地理编码器时,标记仅显示在街道上而不是建筑物上。
如何提高准确性?
HTML/PHP:
<div id="addressline"><?php echo theaddress(); ?></div>
JS:
function myGeocodeFirst() {
geocoder = new google.maps.Geocoder();
geocoder.geocode( {'address': document.getElementById("addressline").innerHTML},
function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
firstLoc = results[0].geometry.location;
map = new google.maps.Map(document.getElementById("map_canvas"),
{
center: firstLoc,
zoom: 15,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
markers = new google.maps.Marker({
position: firstLoc,
map: map,
});
}
else {
document.getElementById("text_status").value = status;
}
}
);
}
window.onload=myGeocodeFirst;