在我的init map函数中,我为每个标记创建了Click listeneres
google.maps.event.addListener(marker, 'click', function() {
createInfoWindow(marker);
});
然后我创建了一个工作正常的infowindows,如果你单击一个标记:
function createInfoWindow(marker) {
var infowindow = new google.maps.InfoWindow({
maxWidth: 300,
name: ''
});
infowindow.setContent(marker.name);
infowindow.open(map, marker);
map.panTo(marker.getPosition());
}
但是当我在敲击的foreach循环上点击相同的方法时,地图只会平移到标记,但不会打开infowindow:
<ul class="object-list" data-bind="foreach: list.Objects">
<li class="object-list-item">
<a href="#" data-bind="text: name, click: getMarkerInfo"></b></a>
</li>
</ul>
self.getMarkerInfo = function() {
var mark = markers.find(function(o) {
return o.name === obj.name;
})
createInfoWindow(mark);
};
所以标记是正确解析的(否则泛不起作用)但是我真的被这个信息所困在了这里。
答案 0 :(得分:1)
好的,我的初始映射函数运行了两次,我的标记数组中有重复项。继续我将检查重复项,但这里有一段代码与重复项一起使用:
section.sr {
margin:0;
padding:0;
background-image: url(../images/simulation-1-waterfall.jpg);
margin-top: 0;
padding: 25px 35px 30px;
height: screen.heightpx;
}