var temp;
function markMap(name){
if (marknew.length>0) {
for (i=0; i < marknew.length; i++) {
marknew[i].setMap(null);
}
marknew.length = 0;
}
if (markersArrar.length>0) {
for (i=0; i < markersArrar.length; i++) {
markersArrar[i].setMap(null);
}
markersArrar.length = 0;
}
$.ajax({
type :"post",
url:"markMapInfo.action",
timeout : 20000,
data: "araid="+name,
error : function(){
},
dataType : "json",
success : function(data){
$.each(data,function(i,n) {
if("list" == i){
if(n.length>0){
for(var i=0;i<n.length;i++){
var node = n[i];
var jingdu=node.longitude;
var weidu=node.latitude;
var tot=node.cnt;
if(tot==0){
var image="images/blue.png";
}
if(tot<8 && tot>0){
var image="images/yellow1.png";
}
if(tot>8 && tot<32){
var image="images/org.png";
}
if(tot>32 && tot<128){
var image="images/red.png";
}
if(tot>128){
var image="images/cof.png";
}
var sgm="images/blc.png";
var markmap= new google.maps.LatLng(weidu,jingdu);
var marker = new google.maps.Marker({
position: markmap,
map: map,
title:""+node.buildingName+"受控主机个数:"+tot,
icon:image
});
markersArrar.push(marker);
(function (i,marker){
google.maps.event.addListener(marker, 'click', function(){
//定义全局变量temp,用交换变量的方式来确定上次点击的是那个图标
if(temp==null){
temp=marker;
marker.setAnimation(google.maps.Animation.BOUNCE);
}else{
temp.setAnimation(null);
temp=marker;
marker.setAnimation(google.maps.Animation.BOUNCE);
}
addNet(n[i].buildingId);
});
})
(i, marker);
}
}
}
});
}
});
}
实现方式其实就是给定一个中间变量,把上次点击的这个图标给记录下来,下次点击的时候把上次的图标给设置成null就好了。其他的基本没什么变化。
google map v3 点击标注点图标跳动
最新推荐文章于 2023-11-01 17:01:56 发布