1

我目前正在做一个跟踪应用程序,并正在使用谷歌地图融合表来显示地理编码数据。它非常快速且易于使用,但我在根据用户单击外部 JavaScript 链接的位置缩放和平移地图时遇到了一些问题。我正在使用来自皇家邮件的数据来根据用户的兴趣点显示多边形,现在我需要能够根据从外部链接生成的点击事件显示信息窗口。我可以从用户希望查看和生成我自己的信息窗口的区域获取 latlng,但它并不总是在多边形的中心。

我现在的问题是:

有什么方法可以通过单击外部 JavaScript 链接从融合表中触发默认信息窗口?

我可以通过查询融合表根据用户选择的区域来居中和缩放地图吗?

如果有人知道解决方案或提供一些关于如何在我的应用程序中实现此功能的指示,我将不胜感激。

谢谢比卡什

4

1 回答 1

0

自从我提出这个问题以来已经足够长了,我认为如果我至少可以回答解决方法会更好,我当然没有找到解决方案,但通过一些技术实现了我所需要的:

我的第一个问题的答案是否定的,您的应用程序没有默认或内置方法从外部链接打开谷歌地图融合层中的信息窗口,但如果您需要它,它是一个简单的技巧,在您的数据库上或至少在融合表上,您需要具有 infowindow 内容,并根据用户单击图层的位置创建侦听器,该侦听器获取图层的行 id 并获取 infowindow 的内容并将其显示在纬度上,您想要的时间很长

listener=google.maps.event.addListener(layer, 'click', function(e){
var rowId= e.row['id'].value ;
//use rowId to query fusion tables or your database and display results to the user
//simple ajax should be able to handle this 
});

我的第二个问题的答案再次是否定的,但也有几种解决方法,我遵循的一种技术是:

允许站点管理员在数据库中保存用户可能执行查询的每个区域的中心和缩放级别,稍后当用户执行任何需要地图居中的查询时,只需使用设置的中心 latlng 和缩放级别管理和显示地图。

这就是我实现所需目标的方式,如果有人有直接的解决方案,那就太好了,但总是有解决方法来执行任务。

谢谢比卡什

于 2012-02-19T13:41:18.960 回答