fixed GridLayer not showing up after removing and adding the same instance
This commit is contained in:
parent
72707e3e30
commit
9707648550
45
debug/map/layer_remove_add.html
Normal file
45
debug/map/layer_remove_add.html
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Leaflet debug page</title>
|
||||
|
||||
<link rel="stylesheet" href="../../dist/leaflet.css" />
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel="stylesheet" href="../css/screen.css" />
|
||||
|
||||
<script type="text/javascript" src="../../build/deps.js"></script>
|
||||
<script src="../leaflet-include.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="map"></div>
|
||||
<button id="removeAdd">Remove and Add Layer</button>
|
||||
|
||||
<script type="text/javascript">
|
||||
map = L.map('map', { center: [0, 0], zoom: 3, maxZoom: 4 });
|
||||
|
||||
L.Icon.Default.imagePath = 'http://cdn.leafletjs.com/leaflet-0.7.3/images';
|
||||
|
||||
|
||||
var tileLayer = L.tileLayer('http://{s}.mqcdn.com/tiles/1.0.0/map/{z}/{x}/{y}.png', {
|
||||
attribution: "Map: Tiles Courtesy of MapQuest (OpenStreetMap, CC-BY-SA)",
|
||||
subdomains: ["otile1", "otile2", "otile3", "otile4"],
|
||||
maxZoom: 12,
|
||||
minZoom: 2
|
||||
});
|
||||
tileLayer.addTo(map);
|
||||
|
||||
L.DomUtil.get('removeAdd').onclick = function() {
|
||||
map.removeLayer(tileLayer);
|
||||
|
||||
setTimeout(function() {
|
||||
map.addLayer(tileLayer);
|
||||
}, 1000);
|
||||
|
||||
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
@ -55,6 +55,7 @@ L.GridLayer = L.Layer.extend({
|
||||
L.DomUtil.remove(this._container);
|
||||
map._removeZoomLimit(this);
|
||||
this._container = null;
|
||||
this._tileZoom = null;
|
||||
},
|
||||
|
||||
bringToFront: function () {
|
||||
|
Loading…
Reference in New Issue
Block a user