Javascript 使用谷歌地图API v3在地图上放置不同颜色的标记

Javascript 使用谷歌地图API v3在地图上放置不同颜色的标记,javascript,google-maps-api-3,Javascript,Google Maps Api 3,代码中的标记表示车辆,现在我要做的是通过标记的颜色(分别为绿色、红色、黄色)检查车辆的状态(移动、静止、停用)。我得到的是,当我点击按钮查看所有标记时,所有标记都会出现并且颜色相同(红色),当我将鼠标悬停在这些标记上时,它们会显示“5”,这是数组中的最后一个标记。 我知道我犯了一些蹩脚的错误,有人能看看我的代码,告诉我我遗漏了什么吗?我的for循环中有一些错误 代码片段(来自JSFIDLE): var映射; var all=[ {“名称”:“0”,“lat”:24.9265088141628

代码中的标记表示车辆,现在我要做的是通过标记的颜色(分别为绿色、红色、黄色)检查车辆的状态(移动、静止、停用)。我得到的是,当我点击按钮查看所有标记时,所有标记都会出现并且颜色相同(红色),当我将鼠标悬停在这些标记上时,它们会显示“5”,这是数组中的最后一个标记。 我知道我犯了一些蹩脚的错误,有人能看看我的代码,告诉我我遗漏了什么吗?我的
for
循环中有一些错误

代码片段(来自JSFIDLE):

var映射;
var all=[
{“名称”:“0”,“lat”:24.92650881416285,“液化天然气”:67.10869789123535,“状态”:“已停用”},
{“名称”:“1”,“lat”:24.845937391711946,“液化天然气”:66.73162758350372,“状态”:“静止”},
{“名称”:“2”,“lat”:24.89372598975854,“液化天然气”:67.08657503128052,“状态”:“停用”},
{“名称”:“3”,“lat”:24.803024353889768,“液化天然气”:67.02959954738617,“状态”:“移动”},
{“名称”:“4”,“lat”:25.032825073841558,“液化天然气”:66.8778133392334,“状态”:“移动”},
{“名称”:“5”,“lat”:24.91757686884615,“液化天然气”:67.19997346401215,“状态”:“静止”}
];
var标记=[];
函数初始化(){
map=new google.maps.map(document.getElementById(“map”){
中心:新google.maps.LatLng(24.89372598975854,67.08657503128052),
缩放:11,
mapTypeId:google.maps.mapTypeId.TERRAIN
});
}
函数drop(){
//end.setVisible(false);
map.setZoom(10);
clearMarkers();
对于(var j=0;j对于(var k=0;k,您可能想要这样的东西:

var映射;
var all=[
{“名称”:“0”,“lat”:24.92650881416285,“液化天然气”:67.10869789123535,“状态”:“已停用”},
{“名称”:“1”,“lat”:24.845937391711946,“液化天然气”:66.73162758350372,“状态”:“静止”},
{“名称”:“2”,“lat”:24.89372598975854,“液化天然气”:67.08657503128052,“状态”:“停用”},
{“名称”:“3”,“lat”:24.803024353889768,“液化天然气”:67.02959954738617,“状态”:“移动”},
{“名称”:“4”,“lat”:25.032825073841558,“液化天然气”:66.8778133392334,“状态”:“移动”},
{“名称”:“5”,“lat”:24.91757686884615,“液化天然气”:67.19997346401215,“状态”:“静止”}
];
var标记=[];
函数初始化(){
map=new google.maps.map(document.getElementById(“map”){
中心:新google.maps.LatLng(24.89372598975854,67.08657503128052),
缩放:11,
mapTypeId:google.maps.mapTypeId.TERRAIN
});
}
函数drop(){
//end.setVisible(false);
map.setZoom(10);
clearMarkers();
对于(var j=0;j
html,正文{
身高:100%;
保证金:0;
填充:0;
}
#地图{
身高:100%;
}

好的,我做到了。当我将@Vadim Gremyachev提供的代码与我的原始代码集成时,出现了一些问题,但现在它可以工作了

var映射;
var all=[
{“名称”:“0”,“lat”:24.92650881416285,“液化天然气”:67.10869789123535,“状态”:“已停用”},
{“名称”:“1”,“lat”:24.845937391711946,“液化天然气”:66.73162758350372,“状态”:“静止”},
{“名称”:“2”,“lat”:24.89372598975854,“液化天然气”:67.08657503128052,“状态”:“停用”},
{“名称”:“3”,“lat”:24.803024353889768,“液化天然气”:67.02959954738617,“状态”:“移动”},
{“名称”:“4”,“lat”:25.032825073841558,“液化天然气”:66.8778133392334,“状态”:“移动”},
{“名称”:“5”,“lat”:24.91757686884615,“液化天然气”:67.19997346401215,“状态”:“静止”}
];
var标记=[];
函数初始化(){
map=new google.maps.map(document.getElementById(“map”){
中心:新google.maps.LatLng(24.89372598975854,67.08657503128052),
缩放:11,
mapTypeId:google.maps.mapTypeId.TERRAIN
});
}
函数drop(){
//end.setVisible(false);
map.setZoom(10);
clearMarkers();
对于(var j=0;j