我使用 GMaps API v3,我有两个并排放置的谷歌地图让我们将地图称为左侧X和右侧的地图Y。我的问题是当用户拖动X时是否可以让Y拖动自己?
我知道如何检测谷歌地图上的拖动事件,但是如何将拖动从一张地图应用到另一张地图?
谢谢!
我使用 GMaps API v3,我有两个并排放置的谷歌地图让我们将地图称为左侧X和右侧的地图Y。我的问题是当用户拖动X时是否可以让Y拖动自己?
我知道如何检测谷歌地图上的拖动事件,但是如何将拖动从一张地图应用到另一张地图?
谢谢!
我想要一个类似的功能,但需要缩放也被镜像。
如您所料,它与接受的答案非常相似:
google.maps.event.addListener(map, 'bounds_changed', (function () {
map2.setCenter(map.getCenter());
map2.setZoom(map.getZoom());
}));
这是一个演示它的JSFiddle:http: //jsfiddle.net/LREfU/
这是我要尝试的:在您的拖动事件中,getCenter()
在XsetCenter()
上使用,然后在Y上使用该 lat-lng 。我假设您正在使用地图 API 的“bounds_changed”事件。
更新:这样的事情:
//X and Y are map objects
google.maps.event.addListener(X, 'bounds_changed', (function () {
Y.setCenter(X.getCenter());
}));
您甚至可以添加一些逻辑setTimeout
来检测用户何时停止拖动 X,然后才将中心设置在 Y 上。