我们如何在谷歌地图中添加带有点击事件的多个标记? [复制]
Posted
技术标签:
【中文标题】我们如何在谷歌地图中添加带有点击事件的多个标记? [复制]【英文标题】:how can we add multiple marker with click event in google map? [duplicate] 【发布时间】:2014-10-01 04:37:58 【问题描述】:我正在使用下面的代码,但我对点击事件有点困惑。如何,我可以在每个标记上添加点击事件吗??
var address = 'Dubai'; var neighborhoods = [ new google.maps.LatLng(25.23247465817403, 55.30191340351564), new google.maps.LatLng(25.244586082480332, 55.29822268391115), new google.maps.LatLng(25.230844181976337, 55.32225527668459), new google.maps.LatLng(25.224787936110832, 55.28526224995119) ]; var markers = []; var iterator = 0; var map; var geocoder = new google.maps.Geocoder(); function initialize() var mapOptions = zoom: 12, ; map = new google.maps.Map(document.getElementById('mapCanvas'), mapOptions); geocoder.geocode( 'address': address , function (results, status) if (status == google.maps.GeocoderStatus.OK) map.setCenter(results[0].geometry.location); ); function drop() for (var i = 0; i < neighborhoods.length; i++) setTimeout(function () addMarker(); , i * 200); function addMarker() var image = 'img/flagred.png'; markers.push(new google.maps.Marker( position: neighborhoods[iterator], map: map, icon: image, title:"Hello World!", draggable: false, animation: google.maps.Animation.DROP )); iterator++;
我在这里查看了其他答案,但这并没有解决我的问题。
【问题讨论】:
【参考方案1】:只需将其添加到您添加到地图的每个标记中。所以将 addMarker-definition 更改为
function addMarker()
var image = 'img/flagred.png';
var marker = new google.maps.Marker(
position: neighborhoods[iterator],
map: map,
icon: image,
title:"Hello World!",
draggable: false,
animation: google.maps.Animation.DROP
);
markers.push(marker);
google.maps.event.addListener(marker, 'click', function()
// your magic goes here
);
iterator++;
【讨论】:
我已经更新了你的代码,但之后地图没有显示在这里!! 我的错,在your magic goes here
之后忘记了);
是的!它在这里工作!以上是关于我们如何在谷歌地图中添加带有点击事件的多个标记? [复制]的主要内容,如果未能解决你的问题,请参考以下文章