Google Maps Marker无法删除

用户名

我在Google Maps网络应用程序中的标记存在问题。我可以添加标记,但不能删除它们。我一直在寻找解决方案的几天,但是v3的标准建议似乎是:

marker.setMap(null);

问题在于这在我的代码中似乎完全无效。这是启动时运行的函数的示例。它以低精度快速获取当前位置。随后需要较长时间才能完成的功能应删除标记并将新标记放置在更准确的位置。问题是,放置后无法删除标记。

function geoLocCheckAndFastLatLng(){


    if (navigator.geolocation) {

    navigator.geolocation.getCurrentPosition(function(position) {

               //get current position
                pos = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);

                //place low accuracy marker

                placeMarker(pos,window.meIconMediumAccuracy,window.myPositionMarker);

                //and center map

                 window.map.setCenter(pos);

                 window.map.setZoom(14);

                 window.myPositionMarker.setMap(null);

                 });

    }else{

        alert("Sorry - You're Browser Doesn't Support Geolocation.\nChange To Google-Chrome Or Dolphin To Use This App");
    }

}

因此,以上函数在理论上会获取位置,放置一个标记,然后删除该标记。但是标记仍然存在!有人可以帮忙吗?我只有几天的时间要结束,我不明白我要去哪里错了。

这是地方标记功能:

function placeMarker(location, iconType, marker) {

    //alert(window.markers.length);

    //if the marker is undefined it means it needs to be created form scratch
    //using the iconType and location provided in the function call
    if(marker === undefined){

    marker = new google.maps.Marker(

       {
           position: location,
           map: window.map,
           icon: iconType,
       });

    //and add a click listener
    google.maps.event.addListener(marker, 'click', function()
      {

        alert("Marker location:\n" + pos);

      });

    //add to markers array
    window.markers.push(marker);


    }else{

        marker.setPosition(location);

    }

}
Acedrew

我认为问题的根本原因在于,您实际上并未通过.setMap(null)调用解决您认为属于的对象。

尝试从placeMarker()返回标记,然后将其分配给var并在其上调用setMap(null)。

如果您在初始化google.maps.marker()之后声明window.myPositionMarker =标记,它将按预期运行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android Google Maps Marker无法立即更新

来自分类Dev

拖放Google Maps Marker

来自分类Dev

是否可以根据标签删除android Google Maps Marker?

来自分类Dev

Google Maps Drag Marker GeoCode

来自分类Dev

Google Maps Marker显示/隐藏

来自分类Dev

Google Maps Drag Marker GeoCode

来自分类Dev

Google Maps Marker链接失败

来自分类Dev

Google Maps iOS删除折线

来自分类Dev

Google Maps Marker —设置背景颜色

来自分类Dev

iOS Google Maps Marker拖动事件

来自分类Dev

Google Maps Multi Marker不起作用

来自分类Dev

Google Maps Marker —设置背景颜色

来自分类Dev

未显示Google Maps Marker Shadow

来自分类Dev

在ImageMapType上水平重复Google Maps Marker

来自分类Dev

Google Maps API Snap Marker To Polyline

来自分类Dev

React Google Maps无法导入

来自分类Dev

Google Maps无法使用jQuery

来自分类Dev

Google Maps for android无法呈现

来自分类Dev

无法与Flutter Web上的Google Maps互动(google_maps)

来自分类Dev

无法使google.maps.event.trigger(geoXml.docs [0] .placemarks [0] .marker,'click')正常工作

来自分类Dev

删除/移动Google Maps标记(jquery-ui-maps)

来自分类Dev

删除多个圈子的Google Maps API

来自分类Dev

删除多个圈子的Google Maps API

来自分类Dev

Android Firebase删除Google Maps标记

来自分类Dev

无法嵌入“新外观”的Google Maps

来自分类Dev

Google Maps SDK无法验证API密钥

来自分类Dev

Google Maps无法使用angularjs加载

来自分类Dev

Google Maps LatLngbounds无法正常工作

来自分类Dev

无法在Android项目中实施Google Maps