【发布时间】:2015-09-10 19:06:16
【问题描述】:
根据 Google 文档,当您在 gmap 上创建标记时,该标记也会“复制”到街景版本的地图上。
但是,onClick 事件绑定没有被复制(或者至少看起来没有),所以我无法在街景中打开标记上的 InfoWindow。
理想情况下,我实际上可以为 StreetView 版本的 InfoWindow 定义不同的内容,但现在我什至无法打开相同的 InfoWindow。
我正在使用 Google 示例中的代码在主地图标记上创建 InfoWindow 绑定,如下所示(包装在一个函数中):
google.maps.event.clearListeners(marker,'click');
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent(html);
infoWindow.open(map, marker);
// infoWindow.open(map.getStreetView(), marker);
});
该注释行是我尝试为街景版本的标记添加开启器,但它没有做任何事情。
注意:map 是地图对象,marker 是标记对象,html 包含要放入信息窗口的 HTML 字符串。所有这些都适用于主地图标记,因此它不是传递空变量或任何东西的问题。问题仅在于让街景标记在单击时弹出它的信息窗口。
请注意,这不是 Google Maps StreetView InfowIndows opening on map 的重复项,因为此问题是由于我这边的编码问题造成的,并且已使用已接受答案中的步骤解决。链接的问题是指 Google 对其 API 所做的更改,该更改破坏了某些功能或至少导致其以不良方式运行。
【问题讨论】:
-
谢谢,我去看看。我所做的每一次搜索都返回了将 Street View /into/ InfoWindows 放入的结果!
-
好的,问题似乎是当我有两个信息窗口在单击时试图打开...我想知道第二个 .open() 是否在看到之前关闭了地图上的那个,然后打开街景会关闭刚刚打开的窗口...
-
看起来您只有一个信息窗口。您不能同时在两者上拥有相同的信息窗口。
-
这就是我需要的线索!市场被复制到街景中,但没有被复制到任何相关的信息窗口中。这很有意义 - 现在必须修复它。谢谢。
标签: javascript google-maps google-maps-api-3 google-street-view