自定义图标Google Maps V3

时间:2013-07-05 17:31:59

标签: google-maps google-maps-api-3 customization google-maps-markers

这张地图很好用,我只有一个麻烦 我需要为每个标记创建一个不同的图标。 我的代码真的没有幸运^^
我怎么样?

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

1 个答案:

答案 0 :(得分:0)

在标记构造函数中,将图标属性添加到您传递的匿名对象的图标URL:

var marker = new google.maps.Marker({         职位:latlng,         地图:地图,         图标:(此处为图片网址),         zIndex:Math.round(latlng.lat()* - 100000)&lt;&lt; 5         });

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

(通过手机发送,抱歉,如果布局不好)。