gpt4 book ai didi

javascript - Google Maps JavaScript API3marker.setMap(null) 不隐藏标记

转载 作者:行者123 更新时间:2023-11-28 02:35:37 26 4
gpt4 key购买 nike

marker.setMap(null) 调用不会从 map 中删除标记。

我已经确认 map 和标记变量指向正确的位置,但 setMap(null) 调用只是使标记在 map 上可见。 setVisible(false) 也没有效果。

if(sch_ovr_google_markers.length > 0){//remove from map
for(var i=0;i < sch_ovr_google_markers.length;i++){
sch_ovr_google_markers[i].setMap(null);//no effect
}
}

标记在此处创建:

var latlon = new google.maps.LatLng(o.lat, o.lon);
var marker = new google.maps.Marker(
{
map:sch_google_map,
position: latlon,
title: gpn[4],
icon: pinImage,
shadow: pinShadow,
animation: google.maps.Animation.DROP,
zIndex:10000,
index: c
});
sch_ovr_google_markers[lidx] = marker;
sch_ovr_google_iws[lidx] = new google.maps.InfoWindow({ content:h, position:latlon });
sch_ovr_google_cbs[lidx] = sch_ovr_google_marker_init(marker,lidx);

除了这个问题之外,整个 map 都运行得很好。周围的代码测试良好,但过于复杂,无法完整列出。

我想知道它的工作是否有一些隐藏的先决条件。我尝试在 setMap(null) 之前删除对它的其他引用,但仍然没有成功。

文档听起来该方法会简单地删除它,但显​​然,至少要满足这一要求,还需要一些东西。有什么想法吗?

最佳答案

希望原始发帖人仍然不需要这个迟到的答案,但我有类似的症状,并且在互联网上找不到任何帮助。

对我来说,填充数据时出现问题,导致出现重复标记。因此,调用 setMap(null) 似乎没有做任何事情,尽管它实际上仍然可以正常工作,但当然它只对另一个标记起作用,而另一个标记仍然在 map 上看起来就像 setMap(null) 不起作用。

因此,如果您确定标记的 map 设置为 null(您可以从 javascript 控制台/调试器进行检查)但标记仍然可见,请尝试设置 draggable: true 参数标记并移动它以查看是否有另一个标记潜伏在其后面。

关于javascript - Google Maps JavaScript API3marker.setMap(null) 不隐藏标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13508754/

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