gpt4 book ai didi

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

转载 作者:IT王子 更新时间:2023-10-29 02:55:37 25 4
gpt4 key购买 nike

试图简单地关闭一个信息窗口?

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

MyMarkers[i].infowindow.close();

最佳答案

随着v3 API ,您可以使用 InfoWindow.close() 轻松关闭 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>

如果每个 Marker 都有一个单独的 InfoWindow 对象,您可能需要考虑将 InfoWindow 对象添加为 的属性code>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();

关于javascript - Google Map API v3 ~ 只需关闭信息窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2946165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com