Javascript Google Map v3中初始化功能后添加和删除标记
我想在地图上显示标记。它们必须移动到新的位置 因为我不知道如何移动一个标记,所以我决定删除现有的标记并创建一个新的标记 但是标记不会被删除。相反,具有相同标签的新标记会不断出现在新位置Javascript Google Map v3中初始化功能后添加和删除标记,javascript,jquery,maps,Javascript,Jquery,Maps,我想在地图上显示标记。它们必须移动到新的位置 因为我不知道如何移动一个标记,所以我决定删除现有的标记并创建一个新的标记 但是标记不会被删除。相反,具有相同标签的新标记会不断出现在新位置 var markers = []; function addMarker(lat, lon, id, label, speed, course, temp) { var marker = new MarkerWithLabel({ name:id, id
var markers = [];
function addMarker(lat, lon, id, label, speed, course, temp) {
var marker = new MarkerWithLabel({
name:id,
id:id,
position: new google.maps.LatLng(lat, lon),
draggable: true,
optimized:false,
map: map,
labelContent: label,
labelAnchor: new google.maps.Point(22, 0),
labelClass: "labels",
labelStyle: {opacity: 0.75}
});
if(temp!=""){
temptext = "<br />Temprature "+ temp;
} else{
temptext =" ";
}
markers[id]=marker;
console.log(markers);
iw[id] = new google.maps.InfoWindow({
content: "<b>"+label+"</b><br />Speed:"+speed+" KM/h "+ "<br />heading "+ course + temptext+"<br />["+id+"]",
});
google.maps.event.addListener(marker, "click", function (e) { iw[id]
.open(map, marker); });
}
function clearMarker(id){
if(typeof markers[id] == 'object'){
console.log("key exists" +id);
delmarker = markers[id]
delmarker.setMap(null);
parent.markers.splice(id, 1) ;
//console.log(markers);
} else{
console.log(id+ "key does not exist" );
}
}
var标记=[];
功能添加标记(纬度、经度、id、标签、速度、航向、温度){
变量标记=新标记WithLabel({
姓名:id,,
id:id,
位置:新google.maps.LatLng(lat,lon),
真的,
优化:错,
地图:地图,
标签内容:标签,
labelAnchor:新的google.maps.Point(22,0),
labelClass:“标签”,
标签样式:{不透明度:0.75}
});
如果(温度!=“”){
TENTEXT=“
温度”+温度;
}否则{
TENTEXT=“”;
}
标记器[id]=标记器;
控制台日志(标记);
iw[id]=新建google.maps.InfoWindow({
内容:“+label+”
速度:“+Speed+”KM/h“+”
标题“+course+testext+”
[“+id+”],
});
google.maps.event.addListener(标记,“单击”,函数(e){iw[id]
.打开(地图、标记);};
}
函数clearMarker(id){
if(标记的类型[id]=“对象”){
console.log(“密钥存在”+id);
delmarker=markers[id]
delmarker.setMap(空);
父标记拼接(id,1);
//控制台日志(标记);
}否则{
console.log(id+“密钥不存在”);
}
}
我猜标记
是一个数组,因为您在顶部声明了它,但后来您使用键入对象
方法检查该数组中是否有东西?如果(typeof markers[id]='object'){…}@adeneo我按照您的建议更改了它,您确定它不应该是。但是标记仍然没有被删除。