磁贴上的事件开始在Google Maps v3中加载

时间:2014-10-12 21:09:26

标签: javascript html5 google-maps events google-maps-api-3

我正在寻找一种方法来检测谷歌地图v3的瓷砖是否正在加载,以及当瓷砖开始加载时触发的事件。

我的UI构建如下:

背景图层上有地图。 在前台有一个用户输入位置的表单。 在他进入后,地图正在平移并缩放到指定位置。

我想做的就是隐藏前景层后: 1.地图被缩放 2.地图被淘汰 3.加载所有图块

问题是当键入的位置非常靠近起始位置时,没有触发“tilesloaded”事件,因为地图仅平移了几个像素。所以我不能依赖“tilesloaded”事件。

我不能依赖于“bounds_changed”或“idle”事件,因为它们会在所有图块加载之前触发。

你有什么想法吗?

1 个答案:

答案 0 :(得分:0)

你可以:

  1. 收听tilesloaded - 事件并在其触发时隐藏表单
  2. 捕获tilesloaded未触发的情况,在变量中存储边界(打开表单时)。观察bounds_changed - 事件并检查存储边界的东北/西南与当前边界之间的差异(以屏幕像素为单位)是否小于256(即图块的大小)。如果是这样,您可以假设没有要加载的磁贴,立即触发tilesloaded - 事件。