搜索发现了一些类似的问题,所有答案都表明OP使用数组,但在我的情况下我不能(或者我还不够熟悉)。
我使用Google Maps API v3从页面中获取此代码段。
// var locations is defined outside this snippet. it's an array of location data (long/lat, name, etc)
var infowindow = new google.maps.InfoWindow();
var marker, i;
for (i = 0; i < locations.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][1], locations[i][2]),
map: map,
icon: iconImage
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(locations[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
}
我需要能够通过Google地图代码之外的点击触发google.maps.event.addListener
。我的问题是变量marker
不是唯一的,我甚至不能100%确定这个代码段是如何工作的(marker
每次都不会被覆盖和丢失?)。
如何触发特定marker
的点击?
答案 0 :(得分:0)
正在编辑问题:
要触发对特定标记的点击,您可以使用:
google.maps.event.trigger(marker, 'click');
为了做到这一点,你需要在创建标记时将标记存储在某个位置。