-3

我正在执行以下操作以将标记添加到数组中的谷歌地图。

我的问题是指我试图设置的函数的结尾marker.icon = imageUnlikely;我试图让标记成为图像而不是标准的谷歌地图标记,但它不起作用。如果我添加icon: imageUnlikelymarker对象中,图像会正确显示。

有任何想法吗?

var imageUnlikely = new google.maps.MarkerImage('/BeachApp/maps/Unlikely.PNG', new google.maps.Size(15, 14));

function SetupMarkers(map, locations) {
var shapeNoUpdate = {
coord: [0, 0, 218, 200],
type: 'rect'
};

var shapeWithUpdate = {
coord: [1, 1, 1, 20, 55, 20, 55, 1],
type: 'poly'
};

for (var i = 0; i < locations.length; i++) {

    var beach = locations[i];

    var beachId = beach[7];

    var myLatLng = new google.maps.LatLng(beach[1], beach[2]);

    var marker = new google.maps.Marker({
        position: myLatLng,
        map: map,   
        shape: shapeNoUpdate,
        title: beach[0] + ' - pollution ' + beach[4],
        beachId: beachId,        
        arrayIndex: i

    });

    if (beach[4] == 'Unlikely') {
        marker.icon = imageUnlikely;
    } 

}
}

SetupMarkers(map4, beaches4);
4

1 回答 1

1

不要使用未记录的属性(google.maps.Marker没有任何记录的属性)。使用记录的方法,在本例中为 setIcon()。

示例(未测试):

 if (beach[4] == 'Unlikely') {
    marker.setIcon(imageUnlikely);
 } 
于 2012-12-11T06:46:00.947 回答