是否可以使用位置名称动态标记谷歌地图中的位置。 客户端将通过rss feed向我们提供位置名称。我们将使用php脚本获取该位置(这不用担心),然后想在谷歌地图中标记它们。
如果我们得到了地址:Weston Town Recreation Department 20 Alphabet Ln,Weston,MA(781)那么我们必须在googel地图中标记它
我不太了解如何发布或标记此内容并在网页中动态显示,因为我是这个谷歌地图的新手
请在这个问题上指导我..
我还想在弹出窗口中添加一些细节,当鼠标悬停在谷歌地图上的标记时 - 请为此建议解决方案
答案 0 :(得分:3)
您需要Geocode您的地址,然后使用results[idx].geometry.location
设置标记。 (谷歌地图地理编码页面有an example,可以帮助您入门。)
此处添加了Google代码,以防它发生变化/不再存在。
var geocoder, map;
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
function codeAddress() {
var address = document.getElementById("address").value;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
<body onload="initialize()">
<div id="map_canvas" style="width: 320px; height: 480px;"></div>
<div>
<input id="address" type="textbox" value="Sydney, NSW">
<input type="button" value="Encode" onclick="codeAddress()">
</div>
</body>