diff --git a/spec/suites/spiderfySpec.js b/spec/suites/spiderfySpec.js index a6080d5ce..366bf1a34 100644 --- a/spec/suites/spiderfySpec.js +++ b/spec/suites/spiderfySpec.js @@ -67,4 +67,26 @@ expect(marker._container.parentNode).to.be(map._pathRoot); expect(marker2._container.parentNode).to.be(map._pathRoot); }); + + describe('zoomend event listener', function () { + it('unspiderfies correctly', function () { + + var group = new L.MarkerClusterGroup(); + var marker = new L.Circle([1.5, 1.5], 10); + var marker2 = new L.Circle([1.5, 1.5], 10); + + group.addLayer(marker); + group.addLayer(marker2); + map.addLayer(group); + + marker.__parent.spiderfy(); + + expect(group._spiderfied).to.not.be(null); + + map.fire('zoomend'); + + //We should unspiderfy with no animation, so this should be null + expect(group._spiderfied).to.be(null); + }); + }); }); \ No newline at end of file diff --git a/src/MarkerCluster.Spiderfier.js b/src/MarkerCluster.Spiderfier.js index 2a1a6f476..ead03b4ce 100644 --- a/src/MarkerCluster.Spiderfier.js +++ b/src/MarkerCluster.Spiderfier.js @@ -111,6 +111,8 @@ L.MarkerCluster.include({ delete m._spiderLeg; } } + + group._spiderfied = null; } });