我正在尝试触发 Google map 上标记的点击事件,以在其上显示一个 infowindow
。
$li.click(function(e) {
var checkmarker = this.id;
for (var i in markers) {
if (checkmarker == markers[i].id) {
google.maps.event.trigger(markers[i], 'click');
}
}
});
$("#addresses ul").append($li);
我添加了一个像这样的事件监听器:
(function(marker, data) {
google.maps.event.addListener(marker, "click", function (e) {
var contentString = "<p><img width='80' src='http://science-all.com/images/flower/flower-06.jpg'/>" + marker.title + "</p>";
infoWindow.setContent(contentString);
infoWindow.open(map, marker);
});
})(marker, data);
请告诉我我在这里缺少什么。当我点击 li
时,它与标记 id 进行了正确的比较,但我猜它无法传递正确的标记对象。
最佳答案
尝试查看 Simple click event在 map 文档中。
我注意到您有不同的方式来设置标记单击事件。使用Marker.addListener语法来正确设置它。
在示例中,它应该如下所示
...
marker.addListener('click', function() {
[do something here]
});
...
关于javascript - google.maps.event.trigger 不起作用。遵循了之前所有相关的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34761826/