谷歌地图v3删除poliline的最后一行

时间:2015-06-22 08:18:31

标签: google-maps-api-3

我的脚本会在地图中添加标记。 当我想删除最后一个单击后退按钮http://tests.uk4u.pl/goomap/goomap_markers/ 一切正常,但我开始与poliline类似。经过我的代码的许多可能的更改后,我无法像我的标记一样实现相同的目标。我想用后退按钮删除最后一行poliline。删除最后一个后,我希望有可能从这一点开始,就像我的标记一样。请帮助我因为我无法在任何地方找到解决方案,我在最后两天尝试过。

var testInput;
var path=[];
var map;
var mapOptions = {
        center: new google.maps.LatLng(53.153691, -2.011640),
        zoom: 15
    };

var poly;
var polyOptions = {
        strokeColor: 'red',
        strokeOpacity: 0.8,
        strokeWeight: 4
    };

function initialize() {

    testInput = document.getElementById('test_input');
    testInput.value = '';   

    map = new google.maps.Map(document.getElementById('map-canvas'),mapOptions);

    map.controls[google.maps.ControlPosition.TOP_LEFT].push(document.getElementById('menu'));

    poly = new google.maps.Polyline(polyOptions);

    google.maps.event.addListener(map, 'click', function(event) {


        poly.setMap(map);

        var myLatLng = event.latLng;
        var lat = myLatLng.lat();
        var lng = myLatLng.lng();

        addLatLng(event);

    });
    path = poly.getPath();
    function addLatLng(event) {

        path.push(event.latLng);
        testInput.value = path.toString();
    }   
}
function deleteMarker() {

        poly.setMap(null);//remove from map
        path = [];

}
google.maps.event.addDomListener(window, 'load', initialize);

1 个答案:

答案 0 :(得分:2)

由于pathMVCArray,我们只需删除path.pop()的最后一个坐标,它就会自动消失。

我有一个快速演示,可以从documentation's example

进行修改

http://jsfiddle.net/cx5n29ff/
希望它有所帮助:)