在调整大小和移动时触发Google Maps API矩形bounds_changed事件

时间:2014-08-11 21:42:08

标签: google-maps

我正在使用GoogleMaps API,我正在尝试区分正在调整大小或移动的矩形对象。

我正在使用听众:

google.maps.event.addListener(newShape, 'bounds_changed', function() {
  // do stuff
});

但是,调整矩形和完全移动矩形时会激活。有没有办法区分这两个不同的事件?

2 个答案:

答案 0 :(得分:2)

我尝试了@Darwin建议的方式。当我们刚刚开始拖动时,坐标仍然保持不变,因此drag以及bounds_changed

的事件被触发

一种更简单,更可靠的方法,我做的是拥有一个名为isBeingDragged的全局变量,并在true事件处理程序中将其设置为dragstart。在bounds_changed事件处理程序中,我检查了此变量是否为true。如果不是,则调整大小事件,否则为拖动事件。

我再次在isBeingDragged事件处理程序中将drag_end变量设置为false。

答案 1 :(得分:0)

最初存储矩形的边界,当事件触发时检查两者(soutWest和NorthEast)是否都已更改。如果是,则移动矩形,否则调整大小。

检查后更新存储的边界。