Google Map API v3 ~ 只需关闭信息窗口?

2024-01-01

尝试简单地关闭信息窗口?

我已经有了一系列标记,所以像这样的东西会很好。谢谢

MyMarkers[i].infowindow.close();

随着v3 API http://code.google.com/apis/maps/documentation/javascript/,您可以轻松关闭InfoWindowInfoWindow.close() http://code.google.com/apis/maps/documentation/javascript/reference.html#InfoWindow方法。您只需要保留对InfoWindow您正在使用的对象。考虑下面的例子,它打开了一个InfoWindow并在 5 秒后关闭它:

<!DOCTYPE html>
<html> 
<head> 
  <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
  <title>Google Maps API InfoWindow Demo</title> 
  <script src="http://maps.google.com/maps/api/js?sensor=false" 
          type="text/javascript"></script>
</head> 
<body>
  <div id="map" style="width: 400px; height: 500px;"></div>

  <script type="text/javascript">
    var map = new google.maps.Map(document.getElementById('map'), {
      zoom: 4,
      center: new google.maps.LatLng(-25.36388, 131.04492),
      mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    var marker = new google.maps.Marker({
      position: map.getCenter(),
      map: map
    });

    var infowindow = new google.maps.InfoWindow({
      content: 'An InfoWindow'
    });

    infowindow.open(map, marker);

    setTimeout(function () { infowindow.close(); }, 5000);
  </script>
</body>
</html>

如果你有一个单独的InfoWindow每个对象Marker,您可能需要考虑添加InfoWindow对象作为你的财产Marker对象:

var marker = new google.maps.Marker({
  position: map.getCenter(),
   map: map
});

marker.infowindow = new google.maps.InfoWindow({
  content: 'An InfoWindow'
});

然后你就可以打开和关闭它InfoWindow如下:

marker.infowindow.open(map, marker);
marker.infowindow.close();

如果您有一组标记,则同样适用:

var markers = [];

marker[0] = new google.maps.Marker({
  position: map.getCenter(),
   map: map
});

marker[0].infowindow = new google.maps.InfoWindow({
  content: 'An InfoWindow'
});

// ...

marker[0].infowindow.open(map, marker);
marker[0].infowindow.close();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Map API v3 ~ 只需关闭信息窗口? 的相关文章

随机推荐