Google visualization Google可视化API Geomap:如何处理标记点击事件?
我最初在世界视图上使用Google Visualization API Geomap(选项['dataMode']='regions'),并在单击某个国家时捕获“regionClick”事件,如下所示:Google visualization Google可视化API Geomap:如何处理标记点击事件?,google-visualization,geomap,Google Visualization,Geomap,我最初在世界视图上使用Google Visualization API Geomap(选项['dataMode']='regions'),并在单击某个国家时捕获“regionClick”事件,如下所示: google.visualization.events.addListener( geomap, 'regionClick', function (e) { var rowindex = data.getFilteredRows([{column: 0, value: e
google.visualization.events.addListener(
geomap, 'regionClick', function (e) {
var rowindex = data.getFilteredRows([{column: 0, value: e['region']}]);
var location = data.getValue(rowindex[0], 3);
location.href = "?ISO=" + e['region'] + "&Location=" + location;
});
然后我在markers模式(选项['dataMode']='markers')下绘制放大到该国的地图。但是,当标记本身被单击时,我似乎无法捕获任何事件
文档()仅引用“select”和“regionClick”事件,在本例中,这两个事件都不会触发。(使用Chrome 9和IE 8进行测试。)
有人成功地做到了这一点吗?
非常感谢。我让它在IE 8和Chrome上运行。首先,如果您以文件的形式在本地运行此文件,请注意文档中的警告://
如果不是这样,请确保您的
google.visualization.GeoMap
变量(addListener的第一个参数)确实命名为GeoMap
。如果是,则添加一个alert()
作为事件处理程序中的第一行代码,并查看是否触发。最后,请注意,除非变量数据是全局的,否则如果您在执行操作时尝试从事件处理程序访问它,它将超出范围。根据当前不支持它。感谢aardila的回复。我有它的工作区域,只是没有标记模式。我附上了两个例子来说明。很抱歉,它不被支持。我错过了文档中关于标记的注释(相当不清楚),因为我只使用了区域。“在标记模式下,此[事件]不会针对“区域”选项中指定的特定国家抛出(如果列出了特定国家)”。然后他们应该加上:“标记本身不会抛出任何事件。”哦,好吧,至少我知道,而且不必再花更多时间了!检查这里的评论,它做到了!