Do not use css z-index

This commit is contained in:
ahocevar
2019-05-16 09:57:47 +02:00
parent 17d26acb2f
commit b0fae46aa6
2 changed files with 11 additions and 12 deletions

View File

@@ -9,12 +9,6 @@ import Point from '../../../src/ol/geom/Point.js';
const map = new Map({ const map = new Map({
layers: [ layers: [
new TileLayer({
source: new XYZ({
url: '/data/tiles/satellite/{z}/{x}/{y}.jpg',
maxZoom: 3
})
}),
new VectorLayer({ new VectorLayer({
zIndex: 1, zIndex: 1,
style: new Style({ style: new Style({
@@ -27,6 +21,12 @@ const map = new Map({
url: '/data/countries.json', url: '/data/countries.json',
format: new GeoJSON() format: new GeoJSON()
}) })
}),
new TileLayer({
source: new XYZ({
url: '/data/tiles/satellite/{z}/{x}/{y}.jpg',
maxZoom: 3
})
}) })
], ],
target: 'map', target: 'map',

View File

@@ -81,10 +81,13 @@ class CompositeMapRenderer extends MapRenderer {
this.calculateMatrices2D(frameState); this.calculateMatrices2D(frameState);
this.dispatchRenderEvent(RenderEventType.PRECOMPOSE, frameState); this.dispatchRenderEvent(RenderEventType.PRECOMPOSE, frameState);
const layerStatesArray = frameState.layerStatesArray; const layerStatesArray = frameState.layerStatesArray.sort(function(a, b) {
return a.zIndex - b.zIndex;
});
const viewResolution = frameState.viewState.resolution; const viewResolution = frameState.viewState.resolution;
this.children_.length = 0; this.children_.length = 0;
let element = null;
for (let i = 0, ii = layerStatesArray.length; i < ii; ++i) { for (let i = 0, ii = layerStatesArray.length; i < ii; ++i) {
const layerState = layerStatesArray[i]; const layerState = layerStatesArray[i];
if (!visibleAtResolution(layerState, viewResolution) || if (!visibleAtResolution(layerState, viewResolution) ||
@@ -93,12 +96,8 @@ class CompositeMapRenderer extends MapRenderer {
} }
const layer = layerState.layer; const layer = layerState.layer;
const element = layer.render(frameState); element = layer.render(frameState);
if (element) { if (element) {
const zIndex = layerState.zIndex;
if (zIndex !== element.style.zIndex) {
element.style.zIndex = zIndex === Infinity ? Number.MAX_SAFE_INTEGER : zIndex;
}
this.children_.push(element); this.children_.push(element);
} }
} }