gpt4 book ai didi

javascript - Google Markers setVisible true/false 显示/隐藏

转载 作者:行者123 更新时间:2023-11-30 18:42:20 24 4
gpt4 key购买 nike

好的,我有一个谷歌地图商店定位器。输入邮政编码,返回半径范围内的商店。拥有所有这些漂亮的信息窗口、标记图标,甚至可以指路...

简而言之,我需要能够在计算方向之前隐藏(我可以这样做)所有标记(因为方向 api 似乎会自动添加自己的标记,我不知道如何覆盖)。

目前我正在使用以下方法隐藏标记。 这 100% 有效。它在 firebug 的 DOM 选项卡中将标记的可见值设置为 false,标记图标消失。

  function clearMarkers() {

for (var i = 0; i < markers.length; i++) {
markers[i].setVisible(false);
}
}

现在,我的问题是我无法显示或取消隐藏标记。这是我目前的职能。我仍然可以点击我的商店列表,它会弹出标记信息窗口,但标记一旦被隐藏就不会出现。 任何人都可以帮我取消隐藏此 restoreMarkers 函数中的标记图标吗?

  function restoreMarkers() {
for (var i = 0; i < markers.length; i++) {
markers[i].setVisible(true);
}
markers.setMap(map);
}

Here's all my code on jsFiddle if you need it

最佳答案

仅供大家引用:

restoreMarkers 函数末尾的 setMap 调用是 false!在没有验证的情况下,我敢打赌这触发了冲突,因为应设置为 map 的对象已经存在 - 它只是不可见(想象一下 display:none 和 visibility:hidden 在 CSS 中的区别)。

setVisible 方法只影响可见性——不影响存在。因此将 setVisible 设置为 false,不会从 map 对象中移除标记对象,而只会使其不可见。

有关切换 MVC 对象和 JavaScript Maps API v3 的更多信息和详细教程可以在我的博客上找到。例如查看我的最新消息:https://web.archive.org/web/20111011133754/https://bexton.net/2011/07/11/tutorial-advanced-google-maps-marker-toggle-with-jquery-and-maps-api-v3/

关于javascript - Google Markers setVisible true/false 显示/隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6502566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com