我需要能够更改标记图标的点位置,其中每个标记位置都有一个单独的图标。图标需要以锚点为中心,而不是底部中心,因为它们是默认的......
如果不完全重新编写我的代码,我无法弄清楚如何做到这一点......
var sites = [
['Photo 1', 36.33835943134047, -93.63535, 4, 'mylinkurl', 'images/marker1.png'],
['Photo 2', 36.315939, -94.440630, 2, 'mylinkurl', 'images/marker2.png'],
['Photo 3', 36.085890, -93.90175, 1, 'mylinkurl', 'images/marker3.png'],
['Photo 4', 36.09948, -93.28370, 3, 'mylinkurl', 'images/marker4.pngg']
];
function setMarkers(map, markers) {
for (var i = 0; i < markers.length; i++) {
var sites = markers[i];
var siteLatLng = new google.maps.LatLng(sites[1], sites[2]);
var marker = new google.maps.Marker({
position: siteLatLng,
map: map,
icon: sites[5],
title: sites[0],
zIndex: sites[3],
href: sites[4]
});
google.maps.event.addListener(marker, 'click', function() {
$.fancybox({
href : this.href,
width : 1000,
maxHeight : 666,
fitToView : true,
autoSize : false,
type: 'iframe',
padding: 0,
openEffect : 'elastic',
openSpeed : 150,
aspectRatio : true,
closeEffect : 'elastic',
closeSpeed : 150,
closeClick : true,
iframe : { scrolling : 'no'
},
preload : false
});
});
arrMarkers.push(marker);
}
}
我找到了这段代码,但我不知道如何集成它......
anchor: new google.maps.Point(16, 34)
谢谢你。我认为我的困难是我不知道如何将其集成到我的代码中...我需要该图标 url 来自字符串...尝试这个,但它不起作用:
function setMarkers(map, markers) {
for (var i = 0; i < markers.length; i++) {
var sites = markers[i];
var sites = markers[i];
var siteLatLng = new google.maps.LatLng(sites[1], sites[2]);
var icon = {
url: sites[5],
size: new google.maps.Size(40,40),
anchor: new google.maps.Point(20,20)
};
var marker = new google.maps.Marker({
position: siteLatLng,
map: map,
icon: sites[5],
title: sites[0],
zIndex: sites[3],
href: sites[4]
});