gpt4 book ai didi

javascript - 信息窗口在谷歌地图中不起作用

转载 作者:行者123 更新时间:2023-11-28 06:36:28 30 4
gpt4 key购买 nike

我制作了按钮,每个按钮都引用 map 上的一个位置,它工作正常,不是很好,但它可以工作,但是当我尝试添加一个将出现在标记上的信息窗口时,它没有'不起作用,我不知道为什么!

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Marker animations with <code>setTimeout()</code></title>
<style>
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
}
#floating-panel {
position: absolute;
top: 10px;
left: 25%;
z-index: 5;
background-color: #fff;
padding: 5px;
border: 1px solid #999;
text-align: center;
font-family: 'Roboto','sans-serif';
line-height: 30px;
padding-left: 10px;
}

#floating-panel {
margin-left: -52px;
}
</style>
</head>
<body>
<div id="floating-panel">
<button id="drop" onclick="drop()">Nasr City</button>
<button id="drop" onclick="drop1()">Shorouk</button>
<button id="drop" onclick="drop()">Shubra</button>
<button id="drop" onclick="drop()">Future University</button>
<button id="drop" onclick="drop()">Drop Markers</button>

</div>
<div id="map"></div>
<script>

// If you're adding a number of markers, you may want to drop them on the map
// consecutively rather than all at once. This example shows how to use
// window.setTimeout() to space your markers' animation.

var neighborhoods = [
{lat: 52.511, lng: 13.447}
];
var neighborhoods1 = [
{lat: 52.520, lng: 13.410}
];

var markers = [];
var map;

function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 12,
center: {lat: 52.520, lng: 13.410}
});
}

function drop() {
clearMarkers();
for (var i = 0; i < neighborhoods.length; i++) {
addMarkerWithTimeout(neighborhoods[i], i * 200);
}
marker.addListener('click', function() {
infowindow.open(map, marker);
});

}
function drop1() {
clearMarkers();
for (var i = 0; i < neighborhoods1.length; i++) {
addMarkerWithTimeout(neighborhoods1[i], i * 200);
}
t
}

function addMarkerWithTimeout(position, timeout) {
window.setTimeout(function() {
markers.push(new google.maps.Marker({
position: position,
map: map,
animation: google.maps.Animation.DROP
}));
}, timeout);
}

function clearMarkers() {
for (var i = 0; i < markers.length; i++) {
markers[i].setMap(null);
}
markers = [];
}


var contentString = '<div id="content">'+
'<div id="siteNotice">'+
'</div>'+
'<h1 id="firstHeading" class="firstHeading">Uluru</h1>'+
'<div id="bodyContent">'+
'<p><b>Uluru</b>, also referred to as <b>Ayers Rock</b>, is a large ' +
'sandstone rock formation in the southern part of the '+
'Northern Territory, central Australia. It lies 335&#160;km (208&#160;mi) '+
'south west of the nearest large town, Alice Springs; 450&#160;km '+
'(280&#160;mi) by road. Kata Tjuta and Uluru are the two major '+
'features of the Uluru - Kata Tjuta National Park. Uluru is '+
'sacred to the Pitjantjatjara and Yankunytjatjara, the '+
'Aboriginal people of the area. It has many springs, waterholes, '+
'rock caves and ancient paintings. Uluru is listed as a World '+
'Heritage Site.</p>'+
'<p>Attribution: Uluru, <a href="https://en.wikipedia.org/w/index.php?title=Uluru&oldid=297882194">'+
'https://en.wikipedia.org/w/index.php?title=Uluru</a> '+
'(last visited June 22, 2009).</p>'+
'</div>'+
'</div>';

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

var marker = new google.maps.Marker({
position: uluru,
map: map,
title: 'Uluru (Ayers Rock)'
});



</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyC1CJHONRDvyfSS3xAOG9SfW_VCXMoLK5Y&signed_in=true&callback=initMap"></script>
</body>
</html>

最佳答案

您必须将信息窗口添加到 map 对象

 google.maps.event.addListener(window, 'load', infowindow.open(map, marker));

关于javascript - 信息窗口在谷歌地图中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34241414/

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