我的脚本会在地图中添加标记。 当我想删除最后一个单击后退按钮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);
答案 0 :(得分:2)
由于path
是MVCArray,我们只需删除path.pop()
的最后一个坐标,它就会自动消失。
我有一个快速演示,可以从documentation's example:
进行修改 http://jsfiddle.net/cx5n29ff/
希望它有所帮助:)