谷歌地图-更改不同缩放级别上的所有标记大小-map.data.setStyle



我试图用map.data.setStyle一次更改谷歌地图上标记的大小。目前我有这个:

google.maps.event.addListener(map, 'zoom_changed', function() {
var size;
var zoom = map.getZoom();
if (zoom > 7) {
console.log("under 7");
size = new google.maps.Size(50, 50);
map.data.setStyle(function() {
return ({
icon: {
scaledSize: size,
size: size
}
});
});

} else {
console.log("over 7");
size = new google.maps.Size(10, 10);
}});

它不会改变标记的大小。我知道如何使用循环来完成,但我有大约1000个标记,并在缩放级别更改时再次渲染它们,这似乎不具有性能。另一个问题是,我不允许更改图标图片链接,因为它们都不一样,我只需要更改大小。

难道没有一种简单的方法可以改变所有标记的大小吗?这似乎很明显,你需要这样的工具。问候Sven

请注意无法缩放默认标记的大小

你能试试我创建的这个演示吗?我用过:

marker.setMap(null);

并且每当地图检测到">zoom_changed"时,在移除旧标记后创建一个新标记。

希望这能对您的用例和愉快的编码有所帮助!

相关内容

  • 没有找到相关文章

最新更新