title: Remove custom geojson markers (loaded with Leaflet) after zoom
body: <p>I'm adding some points to a map using the code below and they look great. I'm also adding some json polygons without issue.</p>
  
  <p>When a certain zoom level is reached I would like the points and polygons to turn off. Using the map.removeLayer(<em>name of polygon</em>) turns off the polygon perfectly and then zoom back out I use map.addLayer(<em>name of polygon</em>) and they come back (using 'zoomend' and if else statement).</p>
  
  <p>The point features do not react to the removeLayer function like the polygons do. I've also tried to harvestPoints.setOpacity(0) which does not work either. What code should I use to turn these geojson markers "on" and "off" like the polygon features?</p>
  
  <pre><code>function onEachPoint(feature, layer) {            
      layer.bindPopup(feature.properties.MGNT_AREA.toString());
      layer.on('click', function (e) { layer.openPopup(); });
      layer.bindLabel(feature.properties.MGNT_AREA.toString(), {
          noHide: true,
          className: "my-label",
          offset: [-2, -25]
      }).addTo(map);
  };
  
  var areaIcon = {
      icon: L.icon({ 
          iconUrl: 'labels/MonitoringIcon.png',
          iconAnchor: [20, 24]
      })
  };
  
  var harvestPoints = new L.GeoJSON.AJAX('labels/dfo_areas_point.json', {
      onEachFeature: onEachPoint,
      pointToLayer: function (feature, latlng) {
          return L.marker(latlng, areaIcon);
      }
  }); 
  </code></pre>