Question: I am using two GeoJSON data, one for Multi-Polygons and another for markers (Point) in the following functions:

```
var basegeomap;
function loadbasemapstate() /*polygon data*/
{
 basegeomap= L.geoJson(alldistrictdata,{style:myDStyle,onEachFeature: onEachFeature}).addTo(map);
function onEachFeature(feature, layer) {
    layer.on({
        mouseover: highlightFeature,
        mouseout: resetHighlight,
        'click': function(e) 
    {
          $(dinfo).show(1000);
      $(".regdata").html(feature.properties.drc);
      }

    });

        layer.bindPopup('<b>District:</b> ' +  feature.properties.Name  );
     }
}

function ShowAllcenters(aid,atype) /*Marker data*/
{
geocentermap= L.markerClusterGroup();
geocentermap= L.geoJson(allcentersdata,
                { pointToLayer: function (feature, latlng,layer)
                 { return geocentermap.addLayer(L.circleMarker(latlng, s_light_style)
                .bindPopup('<b>Center : ' +  feature.properties.OfficeName + 
                '</b><hr/> Type:'+ feature.properties.PHCType ))}}).addTo(map);
}

```

When the user clicks on a marker circle, the mouseover event of the polygon is overriding the popup event.

Answer: 
When you create marker cluster group from GeoJSON data that contains only points for markers, and you markers will be `L.circleMarker` markers, you must have the following in mind:

* You can use `L.geoJSON` for parsing GeoJSON data, creating desired markers and adding them to cluster, but you don't add GeoJSON layer to the map.
* Markers of type `L.circleMarker` are not interactive by default, so you have to use option `interactive: true` when creating them.
* Markers of type `L.circleMarker` are by default rendered to map pane `overlayPane`, which is the same pane where GeoJSON layer features are rendered. Since you have another GeoJSON layer with polygons, to keep markers above polygons you have to assign markers to some higher map pane, for example `pane: markerPane`.

So your marker cluster layer creation function could then look something like this:

```
function ShowAllcenters(aid,atype) {
  var geocentermap = L.markerClusterGroup();
  L.geoJson(allcentersdata, {
    pointToLayer: function (point, latlng) {
      return(L.circleMarker(latlng, s_light_style, {interactive: true, pane: 'markerPane'}));
    },
    onEachFeature: function (feature, marker) {
      marker.bindPopup('<b>Center : ' +  feature.properties.OfficeName + 
        '</b><hr/> Type:'+ feature.properties.PHCType);
      marker.addTo(geocentermap);
    }
  }
  geocentermap.addTo(map);
}

```
You can disable the interactivity of the GeoJSON polygon layer in its constructor. This will prevent the mouseover event firing for the polygon.

```
L.geoJson(myPolygonGeoJSON, {"interactive":false}).addTo(map);

```