本帖最后由 showbo 于 2014-06-26 11:50:41 编辑

解决方案 »

  1.   

    我还是分享一下解决思路吧:
    定义一个infowindow数组,在er的每次mouseover事件时,先用循环close掉infowindow数组,然后再打开当前的infowindow[i]
    var infowindow=[];
    var position =[[37.563027,126.9763908,"aaa"],[37.56,126.665,"bbb"],[37.56,126.819,"ccc"]]
    for(var i=0;i<position.length;i++){
       infowindow[i] = new google.maps.InfoWindow({
        content: contentString
    });
    google.maps.event.addListener(er, 'mouseover',createMouseover(er,infowindow,i));
    }function createMouseover(temp_er,infowindow,i){
      return function(){
      for(var t=0;t<infowindow.length;t++){
      infowindow[t].close();
      } 
         infowindow[i].open(map, temp_er);
      };
    }