diff --git a/leaflet-core.html b/leaflet-core.html
index 1785909..0afcfaf 100644
--- a/leaflet-core.html
+++ b/leaflet-core.html
@@ -723,7 +723,8 @@
},
detached: function() {
- this._mutationObserver.disconnect();
+ if(this._mutationObserver)
+ this._mutationObserver.disconnect();
},
_viewChanged: function(newValue, oldValue) {
diff --git a/leaflet-layer-group.html b/leaflet-layer-group.html
index 98d8b5f..5e343f8 100644
--- a/leaflet-layer-group.html
+++ b/leaflet-layer-group.html
@@ -17,7 +17,7 @@
-->
-
+
@@ -34,21 +34,22 @@
}
},
- ready: function() {
+ resetMutationObserver : function() {
this._mutationObserver = new MutationObserver(this.registerContainerOnChildren.bind(this));
this._mutationObserver.observe(this, {childList: true});
},
_containerChanged: function() {
if (this.container) {
- var feature = L.layerGroup()
+ var feature = L.layerGroup();
this.feature = feature;
this.feature.addTo(this.container);
- this.registerContaierOnChildren();
+ this.registerContainerOnChildren();
}
},
- registerContaierOnChildren: function() {
+ registerContainerOnChildren: function() {
+ this.resetMutationObserver();
for (var i = 0; i < this.children.length; i++) {
this.children[i].container = this.feature;
}