admin管理员组

文章数量:1405584

I have a reset button that I want to reset the map (including removing overlays) when clicked.

I've been reading around and apparently the way you remove KML overlays is by;

  1. Declaring your kml variable as a global variable

    var ctaLayer = new google.maps.KmlLayer(null);

  2. These are the lines that cause the kml file to overlay on google maps

   var ctaLayer = new google.maps.KmlLayer(kmlFile);
   ctaLayer.setMap(map);
  1. And then call setMap(null) to remove the overlay.

    ctaLayer.setMap(null);

However, this does not seem to be working. I don't get any errors so I'm guessing I'm missing something? I'd appreciate any advice on getting this to work.

I have a reset button that I want to reset the map (including removing overlays) when clicked.

I've been reading around and apparently the way you remove KML overlays is by;

  1. Declaring your kml variable as a global variable

    var ctaLayer = new google.maps.KmlLayer(null);

  2. These are the lines that cause the kml file to overlay on google maps

   var ctaLayer = new google.maps.KmlLayer(kmlFile);
   ctaLayer.setMap(map);
  1. And then call setMap(null) to remove the overlay.

    ctaLayer.setMap(null);

However, this does not seem to be working. I don't get any errors so I'm guessing I'm missing something? I'd appreciate any advice on getting this to work.

Share Improve this question edited Jan 4, 2021 at 10:55 Ayoub Touba 3,0173 gold badges14 silver badges29 bronze badges asked Aug 13, 2012 at 1:35 MattMatt 1,5902 gold badges20 silver badges45 bronze badges 1
  • layer.setMap(null) is correct, so you must be doing something else wrong. Please post code. – ScottE Commented Aug 13, 2012 at 2:17
Add a ment  | 

1 Answer 1

Reset to default 4

Remove the var from in front of the second var ctaLayer (the one that makes it local to the function).

本文标签: javascriptRemoving KML overlay from Google MapsStack Overflow