UNPKG

1.08 kBJavaScriptView Raw
1goog.require('ol.Map');
2goog.require('ol.View');
3goog.require('ol.events.condition');
4goog.require('ol.format.GeoJSON');
5goog.require('ol.interaction.Extent');
6goog.require('ol.layer.Tile');
7goog.require('ol.layer.Vector');
8goog.require('ol.source.OSM');
9goog.require('ol.source.Vector');
10
11var vectorSource = new ol.source.Vector({
12 url: 'data/geojson/countries.geojson',
13 format: new ol.format.GeoJSON()
14});
15
16var map = new ol.Map({
17 layers: [
18 new ol.layer.Tile({
19 source: new ol.source.OSM()
20 }),
21 new ol.layer.Vector({
22 source: vectorSource
23 })
24 ],
25 target: 'map',
26 view: new ol.View({
27 center: [0, 0],
28 zoom: 2
29 })
30});
31
32var extent = new ol.interaction.Extent({
33 condition: ol.events.condition.platformModifierKeyOnly
34});
35map.addInteraction(extent);
36extent.setActive(false);
37
38//Enable interaction by holding shift
39this.addEventListener('keydown', function(event) {
40 if (event.keyCode == 16) {
41 extent.setActive(true);
42 }
43});
44this.addEventListener('keyup', function(event) {
45 if (event.keyCode == 16) {
46 extent.setActive(false);
47 }
48});