2012-08-17 42 views
0

那就是我的场景:我想根据他的位置(使用HTML5地理位置)加载用户感兴趣的地点列表。但问题是,我有一个非常大的地方名单(我不想从我的数据库中加载所有地方),所以我现在采用的解决方案只是在给定的半径内调用mysql来获得结果从用户,比方说,1公里。但我希望当用户拖动谷歌地图来浏览地图时,会逐渐加载该地区的地图显示在地图上(基本上类似于foursquare的功能)。谷歌地图中标记的实时更新?

有没有简单的方法来实现这一目标?希望我清楚的问题,在此先感谢,任何帮助表示赞赏。

Jesús。

+0

我读过这个帖子,这是非常有用的:http://stackoverflow.com/questions/8850336/radius-of-40-kilometers-using-latitude-and-longitude 所以我用这个mysql调用获取所有放置在给定的半径内。但是,如果用户探索地图拖动鼠标在这个半径外面obviusly没有看到任何东西...所以我喜欢逐步获得坐标而不加载所有他们在第一个地方。 – 2012-08-17 09:30:14

回答

1

一般方法:

  1. 获取地图的边界和查询数据基地是目前鉴于
    • 可选的标记,添加填充到边界所以一些标志可供刚出来的视图如果地图被拖动
  2. 显示所得标记
  3. 当在地图上移动(bounds_changed事件,),查询数据库,以获得额外的毫安rkers
  4. 过程中,通过返回的标记,只增加那些新(需要现有标记物和一种方式的阵列,以确定现有的标记和新下载的标记是相同的)

搜索的Google Maps API v3 group (和Google Maps API v2 group,这些概念将适用,但代码示例可能不会)给你一些例子。