/
githubmirror
/
Leaflet
Обзор
Документация
Войти
/
githubmirror
/
Leaflet
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
debug/map/popup.html
84 строки
2 KB
Simon Legner
Rename `Map` to `LeafletMap` and keep `Map` as alias (#9892)
11 ноя 2025, 21:28
Не верифицирован
11 ноя 2025, 21:28
2e9b617
Код
Авторство
О чём код?
<!doctype html> <html lang="en"> <head> <meta charset="utf-8" /> <title>Leaflet debug page - Popup</title> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0" /> <link rel="stylesheet" href="../../dist/leaflet.css" /> <link rel="stylesheet" href="../css/screen.css" /> <script type="importmap"> { "imports": { "leaflet": "../../dist/leaflet-src.js" } } </script> </head> <body> <div id="map"></div> <script type="module"> import {TileLayer, LeafletMap, LatLng, FeatureGroup, Marker, Polyline, Polygon, DomUtil, CircleMarker} from 'leaflet'; const osmUrl = 'https://tile.openstreetmap.org/{z}/{x}/{y}.png'; const osm = new TileLayer(osmUrl, {maxZoom: 18}); const map = new LeafletMap('map') .setView([50.5, 30.51], 15) .addLayer(osm); function getRandomLatLng(llbounds) { const s = llbounds.getSouth(); const n = llbounds.getNorth(); const w = llbounds.getWest(); const e = llbounds.getEast(); return new LatLng( s + (Math.random() * (n - s)), w + (Math.random() * (e - w)) ); } const features = new FeatureGroup([ new Marker(getRandomLatLng(map.getBounds())), new Polyline([ getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()) ]), new Polygon([ getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()) ]) ]); features.bindPopup(layer => `Leaflet ID is ${features.getLayerId(layer)}`).addTo(map); const content = DomUtil.create('p', 'custom-popup'); content.innerText = 'I\'m a red polygon'; new Polygon([ getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()) ], { color: 'red' }).bindPopup(content).addTo(map); new Polyline([ getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()), getRandomLatLng(map.getBounds()) ], { color: 'red' }).bindPopup('I\'m a red polyline').addTo(map); new CircleMarker(getRandomLatLng(map.getBounds()), { color: 'red', radius: 25 }).bindPopup('I\'m a red circle').addTo(map); </script> </body> </html>