点击即可隐藏Google Maps API v3标记

时间:2015-06-24 07:32:31

标签: google-maps google-maps-api-3 maps google-maps-markers show-hide

我想通过点击链接HTML来隐藏标记。我写了一些代码,但它没有用。有人能告诉我什么是错的吗?

var markers = [];

var cuicui= [
     [45.710743, 4.934347],     
     [45.691894, 4.923193],
     [45.713855, 4.928156],
     [45.710238, 4.965208],
     [45.713550, 4.930187],
     [45.712871, 4.928613],
     [45.698959, 4.918937],
     [45.709566, 4.923370],
     [45.715945, 4.931199],
     [45.715824, 4.912740]
];

for (i = 0; i < cuicui.length; i++) {  
    var position = new google.maps.LatLng(cuicui[i][0], cuicui[i][1]),
      marker = new google.maps.Marker({
      position: position,
      map: map
    });

    markers.push(marker);

    google.maps.event.addListener(marker, 'click', (function(marker, i) {
      })(marker, i));   

    marker.setVisible(false);

    google.maps.event.addDomListener(document.getElementById('cuicui'), 'click', function () {
      if (marker.setVisible(false)) {
          marker.setVisible(true);
        } else {
          marker.setVisible(false);
        }
    });
} 

在我的HTML中,我有:

  <a style="cursor : pointer;" id="cuicui">Ici</a>

(抱歉我的英文。)

1 个答案:

答案 0 :(得分:1)

而不是setVisible();使用setMap();

marker.setMap(map);

使其显示和

marker.setMap(null);

使其不可见