2

我可以在悬停时更改标记大小吗?我需要在悬停时增加标记大小(2-3 px)并在鼠标移出时减小到默认大小。

4

2 回答 2

8

如果您使用自定义图标,则可以轻松更改鼠标悬停时的图像:

[...]

var marker_image_medium = new google.maps.MarkerImage('medium.png');
var marker_image_big = new google.maps.MarkerImage('big.png');

var marker = new google.maps.Marker({
    position: myLatlng, 
    map: map,
    icon: marker_image_medium,
    title: "Exemple"
});

google.maps.event.addListener(marker, 'mouseover', function() {
    marker.setIcon(marker_image_big);
});
google.maps.event.addListener(marker, 'mouseout', function() {
    marker.setIcon(marker_image_medium);
});

这是一个部分示例,您必须初始化地图、声明 myLatlng 等。

编辑:oups,setIcon() 上的小错误,已更正。

于 2012-04-30T13:09:18.600 回答
1

你需要改变

google.maps.event.addListener(marker, 'mouseout', function() {
    marker.setIcon(marker_image_medium);
});

google.maps.event.addListener(marker, 'mouseout', function() {
    this.setIcon(marker_image_medium);
});

mouseover这是在和上更改图像的正确方法mouseout

函数内部需要使用this而不是marker

于 2014-01-29T10:59:33.217 回答