当我在可编辑折线上移动顶点时,我想显示一个信息窗口。 此信息将显示折线上前一个顶点的距离和方向。当我删除顶点时,必须关闭信息窗口。 问题是折线没有顶点上的拖拽事件。我将尝试使用折线的鼠标移动但移动完成后它会被触发。 在下一个代码中,我展示了我所说的一个例子。我有一条折线(flightPath)。如果我点击最后一个顶点,我想同时移动一个标记。但它不起作用。移动完成后移动标记。
google.maps.event.addListener(flightPath, 'mousemove', function (event) {
if (typeof event.vertex === "undefined") {
moveline = 0
}
else {
if (event.vertex == (flightPath.getPath().getLength()-1)) {
var path = flightPath.getPath();
marker.setPosition(path.getAt(event.vertex));
}
}
});
有什么建议吗?
注意:我的折线是可编辑的。
由于
答案 0 :(得分:0)
您可以在标记上管理拖动结束事件并更改顶点的de latLng:
google.maps.event.addListener(marker, 'dragend', function(evt){
var vertex = marker.get('vertex');
var path = flightPath.getPath();
var newPath = Array.prototype.slice.call(path).filter(
function(element, index){
return index < vertex;
}).concat([evt.latLng],
Array.prototype.slice.call(path).filter(
function(element, index){
return index > vertex;
}));
flightPath.setPath(newPath);
});
我很抱歉我的英语不好但我希望它有所帮助。