import Map from '../src/ol/Map.js'; import View from '../src/ol/View.js'; import _ol_layer_Group_ from '../src/ol/layer/Group.js'; import TileLayer from '../src/ol/layer/Tile.js'; import {fromLonLat} from '../src/ol/proj.js'; import OSM from '../src/ol/source/OSM.js'; import TileJSON from '../src/ol/source/TileJSON.js'; var map = new Map({ layers: [ new TileLayer({ source: new OSM() }), new _ol_layer_Group_({ layers: [ new TileLayer({ source: new TileJSON({ url: 'https://api.tiles.mapbox.com/v3/mapbox.20110804-hoa-foodinsecurity-3month.json?secure', crossOrigin: 'anonymous' }) }), new TileLayer({ source: new TileJSON({ url: 'https://api.tiles.mapbox.com/v3/mapbox.world-borders-light.json?secure', crossOrigin: 'anonymous' }) }) ] }) ], target: 'map', view: new View({ center: fromLonLat([37.40570, 8.81566]), zoom: 4 }) }); function bindInputs(layerid, layer) { var visibilityInput = $(layerid + ' input.visible'); visibilityInput.on('change', function() { layer.setVisible(this.checked); }); visibilityInput.prop('checked', layer.getVisible()); var opacityInput = $(layerid + ' input.opacity'); opacityInput.on('input change', function() { layer.setOpacity(parseFloat(this.value)); }); opacityInput.val(String(layer.getOpacity())); } map.getLayers().forEach(function(layer, i) { bindInputs('#layer' + i, layer); if (layer instanceof _ol_layer_Group_) { layer.getLayers().forEach(function(sublayer, j) { bindInputs('#layer' + i + j, sublayer); }); } }); $('#layertree li > span').click(function() { $(this).siblings('fieldset').toggle(); }).siblings('fieldset').hide();