1

このマップは正常に機能しますが、1 つだけ問題があります。
マーカーごとに異なるアイコンを作成する必要があります。私は本当に自分のコードに運がありません^^
どうすればいいですか?

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>';
}
4

1 に答える 1

0

マーカー コンストラクターで、渡す匿名オブジェクトにアイコン URL を含むアイコン プロパティを追加します。

var marker = new google.maps.Marker({ position: latlng, map: map, icon:(画像の URL はこちら), zIndex: Math.round(latlng.lat()*-100000)<<5 });

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

(携帯から送信、レイアウトが悪い場合は申し訳ありません)。

于 2013-07-06T12:23:33.370 に答える