隐藏&在事件上显示标记

时间:2011-04-13 08:04:16

标签: javascript html google-maps

google.maps.Marker.prototype.hide = function() 
{
    if (this.div_) 
    {
        this.div_.style.visibility = "hidden";
    }
};
google.maps.Marker.prototype.show = function() 
{
    if (this.div_) {
        this.div_.style.visibility = "visible";
    }
};

它不会导致任何错误。但是当我使用它时它不起作用:

marker = new google.maps.Marker({
                map: map,
                draggable: false,
                position: latlng,
                title: 'some title'
            });

现在如果有人改变缩放我想触发隐藏标记:

google.maps.event.addListener(map, 'zoom_changed', function() {
            marker.hide();
});

但它不起作用。有人可以帮我解决问题吗?

2 个答案:

答案 0 :(得分:1)

隐藏标记使用marker.setMap(null);

再次显示使用marker.setMap(mymap);

编辑:

忘记了可见。这是一个有效的例子: http://jsfiddle.net/herostwist/v9nmQ/1/

答案 1 :(得分:0)

API已经包含这样一种方法:setVisible。通过truefalse