我目前正在为我们正在开发的网站构建“搜索区域”功能。有点像Rightmove上的那个。
除了跟踪对多边形的事件更改(新点的设置和更改现有点)的能力之外,我已经启动并运行了所有东西。我需要能够将坐标发布到表单以进行提交。
我已经尝试使用 Google Code docs 来编辑事件。每次我尝试它时,我都会收到一条关于“set_at”不可能或我的对象没有被定义的消息。
我想我知道是错误的一点是thePolygon
变量没有被传递给新的
google.maps.event.addListener(thePolygon, 'set_at', function() {
// grab paths for infoWindow
grabPaths(thePath);
});
但我不知道为什么。这是一个全局变量。或者不是?
所以,问题是,如何跟踪多边形的变化以将更新的坐标传递给我的表单?
非常感谢所有帮助。
这是我目前拥有的代码:
var mapOptions = {
// options
};
var map = new google.maps.Map(document.getElementById('map'), mapOptions);
var drawingManager = new google.maps.drawing.DrawingManager({
drawingMode: google.maps.drawing.OverlayType.POLYGON,
drawingControl: false,
polygonOptions: {
// drawing options
}
});
drawingManager.setMap(map);
google.maps.event.addListener(drawingManager, 'polygoncomplete', function(polygon) {
// complete functions
});
google.maps.event.addListener(thePolygon, 'set_at', function() {
// complete functions
});
google.maps.event.addListener(thePolygon, 'insert_at', function() {
// complete functions
});