【发布时间】:2011-04-15 12:41:19
【问题描述】:
感谢这个网站和您的帮助,我几乎完成了我的 Googlemaps 脚本。还有一件事,我需要你的帮助:
我的地图上有多个标记。
我想:
- 将每个标记位置保存在变量中
-在地图下方制作链接到标记的外部链接
- 单击这些链接时更改地图中心(如上所述)
到目前为止,这是我的脚本:
<script type="text/javascript">
var offender_locations = [
["10001", "Title 2", "icon.png"],
["10002", "Title 3", "icon.png"],
["10010", "home", "icon.png"]
];
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("results_map"), myOptions);
var latlng = new google.maps.LatLng(0, 0);
for (i = 0; i < offender_locations.length; i++) {
var infowindow = new google.maps.InfoWindow(),
geocoder_map = new google.maps.Geocoder(),
address = offender_locations[i][0],
icon_img = offender_locations[i][2];
(function(addr, img, i) {
geocoder_map.geocode({
'address': addr
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: map.getCenter(),
icon: img
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(offender_locations[i][1]);
infowindow.open(map, marker);
}
})(marker, i));
} else {
alert("error!");
}
});
}(address, icon_img, i));
}
function zoomin() {
map.setZoom(15);
};
function zoomout() {
map.setZoom(15);
}
</script>
最后两个小功能是针对外部链接的点击。目前他们只改变缩放级别,不改变地图中心。
【问题讨论】:
标签: javascript arrays google-maps google-maps-api-3