我正在写google api 3代码,在这里:http://jsfiddle.net/zVaGN/2/ 首先我调用两个Fusiontables出现在地图上,然后我在地图外创建了一个html元素,当点击它时,应打开我之前在Fusiontables中创建的自定义信息窗口。所以我不知道如何创建一个函数,当我点击一个html元素时,它将从fusiontables调用已经创建的infowindows。 所以我想要这个效果http://econym.org.uk/gmap/example_egeotestmon.htm 但我的应该从已经存在的融合表中调用自定义信息窗口。怎么做???
谢谢任何人!
更新
感谢Eric的回复。我不知道这个,我尝试了一个看起来像这样的函数:
function izbor() {
var infowindow = new google.maps.InfoWindow({
query: {" SELECT 'ExtendedData' FROM " + tableid};
});
infowindow.open(map);
}
但我不知道从表中调用什么,在fusiontables中infowindows的名称是什么..我调用了ExtendedData,因为当我将fusiontable导出到kml文件时,那就是infowindow的代码,但是我写的google api 3的代码可能并不好..
更新#2
我在这里尝试过,但它不起作用.. jsfiddle.net/zVaGN/4 /
无论如何,谢谢你的帮助,如果你想出其他解决方案,请写下来!
答案 0 :(得分:0)
我不认为这在Fusion Tables中是可行的。在Fusion Tables中,您无法控制地图上显示的叠加层的创建,无论是标记还是多边形。 Fusion Tables使用已经渲染的叠加层动态创建磁贴,而AFAIK除了使用infoWindowSuppress:false之外,您无法控制它们上的点击事件,这允许您使用FT点击事件返回的值显示您自己的infoWindow
修改强>
此函数将显示从Fusion Tables返回的html。似乎应该有一种方法可以在页面内触发图层上的点击事件。
google.maps.event.addListener(layer, 'click', function(e){
alert(e.infoWindowHtml);
}