1

我想InfoWindow在您从 Google Places 获得的 20 个中打开一个特定的。

首先,我需要确定要打开哪个。因此,一旦我知道要打开的那个,我想通过 Google Places Business ID -> 打开它place.id

所以,到目前为止,我已经通过标记顺序( i )对其进行了测试,如下所示:

openInfoWindowBy(i){
    infowindow.open(map,i);
}

我刚打电话:openInfoWindowBy(1);InfoWindow1,没有打开。点击事件工作正常:

google.maps.event.addListener(markers[i], 'click', getDetails(placesArr[i], i));
markers[i].setMap(map);
addplace(placesArr[i], i);

我究竟做错了什么?并且有可能打开它place.id吗?

4

1 回答 1

1

查看Google 地图开发人员指南这一部分中的示例。Google Maps API V3 中的 Places 库以数组的形式返回结果,因此当您遍历数组时,您应该使用索引值,而不是 place.id 来循环/添加/重新引用标记。

也就是说,您现有的代码openInfoWindowBy引用索引,而不是markers数组中的索引。看来应该是这样的:

openInfoWindowBy(i){
   infowindow.open(map,markers[i]);
}

你需要提出第二个论点markers[1]

于 2012-05-11T16:33:26.340 回答