如何取消谷歌地图标记拖动操作?

Dan*_*l B 8 javascript google-maps draggable marker

正如您在下面的代码中看到的那样,标记是可拖动的.在某些情况下,如果标记被丢弃在错误的区域(多边形),我想取消放置事件,因此标记会自动返回其原始位置.

function placeMarker(latlng, color, isDraggable) {
    var marker = new GMarker(latlng, { icon: getIcon(color), draggable: true });
    map.addOverlay(marker);
    GEvent.addListener(marker, "dragend", function () {
        //redraw polygons again
    });
    GEvent.addListener(marker, "click", function () {
        var latlng = marker.getPoint();
        map.openInfoWindowHtml(marker.getPoint(), latlng.y + ", " + latlng.x);
    });
    return marker;
}
Run Code Online (Sandbox Code Playgroud)

问题是如何在事件中已经删除标记时取消标记的拖动dragend事件?

Max*_*tov 1

我不记得 Google Map API 支持它,但您可以通过将标记的移动保存到堆栈并在需要时提取旧位置来为自己提供此功能。我知道这不是无可辩驳的答案。这只是一般想法。但我希望它会有所帮助。