0

這張地圖工作正常,我只有一個麻煩。
我需要爲每個標記創建一個不同的圖標。 我真的沒有我的代碼幸運^^
我該怎麼辦?自定義圖標谷歌地圖V3

var side_bar_html = ""; 
var gmarkers = []; 
var map = null; 

/** 
*map 
**/ 

var point = new google.maps.LatLng(-23.421409,-51.936722); 
var marker = createMarker(point,"This place",contentString0) 

var point = new google.maps.LatLng(-23.421409,-51.934722); 
var marker = createMarker(point,"This place",contentString1) 

var point = new google.maps.LatLng(-23.421409,-51.932722); 
var marker = createMarker(point,"This place",contentString2) 

//把組裝side_bar_html內容到side_bar DIV

document.getElementById("side_bar").innerHTML = side_bar_html; 
} 

var infowindow = new google.maps.InfoWindow({ 
size: new google.maps.Size(150,50) 
}); 

//這個函數拿起點擊並打開相應的信息窗口

function myclick(i) { 
google.maps.event.trigger(gmarkers[i], "click"); 
} 

//函數創建標記並設置事件窗口功能

function createMarker(latlng, name, html) { 
    var contentString = html; 
    var marker = new google.maps.Marker({ 
     position: latlng, 
     map: map, 
     zIndex: Math.round(latlng.lat()*-100000)<<5 
     }); 

google.maps.event.addListener(marker, 'click', function() { 
    infowindow.setContent(contentString); 
    infowindow.open(map,marker); 
    }); 

gmarkers.push(marker); 
side_bar_html += '<a href="javascript:myclick(' + (gmarkers.length-1) + ')">' + name + '<\/a><br>'; 
} 

回答

0

在你的標記構造器的圖標URL的圖標屬性添加到匿名對象要傳遞:

VAR的標記=新google.maps.Marker({ 位置:經緯度, 地圖:地圖, 圖標:(這裏是圖片URL), zIndex:Math.round(latlng.lat()* - 100000)< });

https://developers.google.com/maps/documentation/javascript/reference#MarkerOptions

(通過手機發送,如果對不起佈局是壞的)。

+0

謝謝,但是這樣做我改變了所有標記的圖標。我需要爲每個標記提供一個不同的圖標,例如: 'var marker = createMarker(point,「This place」,contentString0,** icon **)' – user2537274

+0

根據您的示例,將圖標圖像路徑傳遞給通過圖標參數的createMarker函數,然後將其分配給圖標參數。 – glennr777

+0

非常感謝,工作正常。 – user2537274