2010-07-11 75 views

回答

2

是的,這與刪除標記的方式相同(Google現在使用setMap作爲標準)。 一個好的做法是始終定義一個全局數組變量爲你的標記,折線和directions..etc:

var markers = []; 
var drArr = []; 
var pArr = []; 

... 
// whenever you set a marker, add it to the markers array 
markers.push(marker); 

... 
// whenever you create a DirectionsRenderer instance, add it to the DirectionsRenderer array 
drArr.push(directionsRenderer); 

... 
// whenever you create a Polyline instance, add it to the Polyline array 
pArr.push(polypath); 


// This is used to reset the map 
function resetMap() { 
    // remove Markers 
    for(i=0; i < markers.length; i++) 
     markers[i].setMap(null); 
    // remove DirectionsRenderers 
    for(i=0; i < drArr.length; i++) 
     drArr[i].setMap(null); 
    // remove Polylines 
    for(i=0; i < pArr.length; i++) 
     pArr[i].setMap(null); 
} 

,你可以看到,你可以單獨的resetMap功能函數(如resetMarkers..etc)。

希望得到這個幫助。