【发布时间】:2011-08-29 04:04:45
【问题描述】:
我有以下地图:
var map = new google.maps.Map(document.getElementById('map'), myOptions);
并创建了几个标记调用新的 google.maps.Marker()
现在我需要在单击复选框时隐藏某个组的所有标记,但找不到遍历地图上所有标记的方法。
【问题讨论】:
标签: maps
我有以下地图:
var map = new google.maps.Map(document.getElementById('map'), myOptions);
并创建了几个标记调用新的 google.maps.Marker()
现在我需要在单击复选框时隐藏某个组的所有标记,但找不到遍历地图上所有标记的方法。
【问题讨论】:
标签: maps
您可以跟踪 Google 地图上的所有标记。 Google API 不会跟踪您添加的所有叠加层。当您创建标记对象时,将它们添加到一个数组(不同组的不同数组)。然后在触发相应事件时遍历该特定数组并隐藏该组中的所有标记。
【讨论】:
var gmarkers = Array();
.
.
for( i = 0; i < [your locations array].length; i++ ) {
var position = new google.maps.LatLng([your locations array].lat, [your locations array].long);
bounds.extend(position);
marker = new google.maps.Marker({
position: position,
map: map,
title: markers[i].title
});
gmarkers.push(marker);
}
.
.
.
// hide all the markers
for(i = 0 ; i< gmarkers.length; i++) gmarkers[i].setVisible(false);
【讨论】: