weixin_33691598 2017-04-24 05:04 采纳率: 0%
浏览 87

传单geoJSON过滤

I am using L.GeoJSON.AJAX to load my json. I have the following to style the markers:

    var weakClusterMarkerOptions = {
      radius: 5,
      fillColor: "#FFFF00",
      color: "#000",
      weight: 2,
      opacity: 1,
      fillOpacity: 0.8
    },
    strongClusterMarkerOptions = {
      radius: 7,
      fillColor: "#CC0000",
      color: "#CC0000",
      opacity: 1,
      fillOpacity: 0.8
    };

  function customizeClusterIcon(feature, latlng) {
    if (feature.properties.strongCl === 'strong') {
      return L.circleMarker(latlng, strongClusterMarkerOptions);
    } else {
      return L.circleMarker(latlng, weakClusterMarkerOptions);
    }
  }

I then use the following to filter:

function toggleStrength(strength, showLayer) {
    jsonLayer.refilter(function (feature, layer) {
      if (strength == 'all') {
        return true;
      } else {
        if (showLayer) {
          return feature.properties.strongCl === strength;
        }
      }
    });
  }

The issue here is that when I filter the border of the circleMarker disappears but the marker is still visible, specifically the fill colour.

  • 写回答

2条回答 默认 最新

  • weixin_33712881 2017-04-24 08:58
    关注

    Your fillColor and color has same value #CC0000. Probably border is there. It's just has same color as fill.

    评论

报告相同问题?