需要在Google Maps infowindow中触发事件(使用Google Fusion创建)

时间:2014-02-13 04:24:54

标签: jquery google-maps youtube-api google-visualization google-fusion-tables

我使用从Google Fusion Table中提取的数据在Google地图上填充标记(链接:https://www.google.com/fusiontables/DataSource?docid=1mWA12GVNH1CDLO41ProqVCqQZBXXfV_r6YVRljw)。

单击标记时,会显示信息窗口。 (注意:此操作使用Google Fusion Tables执行)。

我希望触发一个事件,以便在点击infowindow内部的链接时在页面上显示YouTube视频。

在同一页面上,我使用从同一Google Fusion Table中提取的数据创建了Google可视化表格,当我使用jQuery点击Visualization表格中的链接时,我可以在页面上显示YouTube视频。我正在使用Google Maps Infowindow调用相同的功能,但它无效。

以下是我在GitHub上的代码的链接:https://github.com/mershon1/VICE-guide-to-travel/blob/gh-pages/index_v0.3.1.html

我是编程新手,不明白问题所在。我到处搜索我的问题的解决方案,但我没有找到任何具体的解决方案。任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

可以修改自动infoWindow的内容。

这些infoWindows也将在谷歌托管的应用程序中打开,因此必须对内容进行清理,以确保不会注入恶意代码。当您使用developer-tools检查infoWindow时,您将看到val属性已被删除。

您可以做什么:观察FTLayer的点击事件并修改infoWindowHTML。

将其添加到initialize()

的末尾
google.maps.event.addListener(layer, 'click', function(e) {

  e.infoWindowHtml = '<div class="googft-info-window" >'+
                     '<strong>VICE-Guide to:</strong>'+
                     e.row['Country'].value +
                     '('+e.row['Region'].value+')<br/>'+
                     e.row['Hyperlink'].value +
                     '</div>';
});