【发布时间】:2016-12-21 13:44:56
【问题描述】:
我正在尝试在谷歌地图上的两个位置之间添加折线。
其中 1 个位置是静态的(始终相同),另一个是动态的,通过 AJAX 每 X 秒刷新一次。
现在,我需要在地图上的这两点之间添加一条折线。
我可以添加折线,但它不会被删除或刷新。
这是一个有效的FIDDLE
还有我的代码:
var map;
function initialize()
{
var input = $('#input').val();
var input2 = $('#input2').val();
var line = new google.maps.Polyline({
path: [new google.maps.LatLng(24.71237, 72.90634), new google.maps.LatLng(input, input2)],
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2,
geodesic: true,
map: map
});
var latlng = new google.maps.LatLng(21.16536,72.79387);
var myOptions = {
zoom: 5,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var marker = new google.maps.Marker
(
{
position: new google.maps.LatLng(21.1673643, 72.7851802),
map: map,
title: 'Click me'
}
);
var infowindow = new google.maps.InfoWindow({
content: 'Location info:<br/>SVNIT Post Office, Dumas Rd, Surat<br/>LatLng:<br/>21.1673643, 72.7851802'
});
google.maps.event.addListener(marker, 'click', function ()
{
infowindow.open(map, marker);
setTimeout(function(){infowindow.close();}, '5000');
});
//$('#clickme').on('click', function(){
setInterval(function() {
var input = $('#input').val();
var input2 = $('#input2').val();
var NewLatLng = new google.maps.LatLng(input, input2);
//setInterval(function() { marker.setPosition(NewLatLng);}, 2000);
marker.setPosition( NewLatLng );
line.setMap(map);
});
}
window.onload = initialize;
有人可以就这个问题提出建议吗?
我确实尝试添加line.setMap(null);,但这并没有做任何事情。
【问题讨论】: