Leaflet/docs/examples/geojson/geojson-example.html

90 lines
2.7 KiB
HTML
Raw Normal View History

2011-06-18 00:45:04 +08:00
<!DOCTYPE html>
<html>
<head>
2013-11-15 02:34:49 +08:00
<title>Leaflet GeoJSON Example</title>
2012-07-28 14:41:12 +08:00
<meta charset="utf-8" />
2012-02-14 23:02:29 +08:00
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://unpkg.com/leaflet@{{ site.latest_leaflet_version}}/dist/leaflet.css" integrity="{{site.integrity_hash_css}}" crossorigin=""/>
<script src="https://unpkg.com/leaflet@{{ site.latest_leaflet_version}}/dist/leaflet.js" integrity="{{site.integrity_hash_uglified}}" crossorigin=""></script></head>
2011-06-18 00:45:04 +08:00
<body>
<div id="map" style="width: 600px; height: 400px"></div>
2011-06-18 00:45:04 +08:00
2017-02-04 23:17:51 +08:00
<script src="sample-geojson.js"></script>
2012-07-28 14:41:12 +08:00
<script>
2012-07-28 14:41:12 +08:00
var map = L.map('map').setView([39.74739, -105], 13);
2017-02-16 15:44:50 +08:00
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
2014-04-28 19:16:15 +08:00
maxZoom: 18,
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, ' +
2018-05-04 20:17:13 +08:00
'<a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, ' +
2014-04-28 19:16:15 +08:00
'Imagery © <a href="http://mapbox.com">Mapbox</a>',
id: 'mapbox.light'
2012-07-28 14:41:12 +08:00
}).addTo(map);
var baseballIcon = L.icon({
iconUrl: 'baseball-marker.png',
iconSize: [32, 37],
iconAnchor: [16, 37],
popupAnchor: [0, -28]
2011-09-30 18:34:06 +08:00
});
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
function onEachFeature(feature, layer) {
var popupContent = "<p>I started out as a GeoJSON " +
feature.geometry.type + ", but now I'm a Leaflet vector!</p>";
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
if (feature.properties && feature.properties.popupContent) {
popupContent += feature.properties.popupContent;
}
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
layer.bindPopup(popupContent);
}
2012-02-14 23:02:29 +08:00
2012-07-28 19:32:45 +08:00
L.geoJson([bicycleRental, campus], {
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
style: function (feature) {
return feature.properties && feature.properties.style;
},
onEachFeature: onEachFeature,
pointToLayer: function (feature, latlng) {
return L.circleMarker(latlng, {
radius: 8,
fillColor: "#ff7800",
color: "#000",
weight: 1,
opacity: 1,
fillOpacity: 0.8
});
}
}).addTo(map);
L.geoJson(freeBus, {
filter: function (feature, layer) {
if (feature.properties) {
// If the property "underConstruction" exists and is true, return false (don't render features under construction)
return feature.properties.underConstruction !== undefined ? !feature.properties.underConstruction : true;
}
return false;
},
onEachFeature: onEachFeature
}).addTo(map);
2012-02-14 23:02:29 +08:00
2012-07-28 19:32:45 +08:00
var coorsLayer = L.geoJson(coorsField, {
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
pointToLayer: function (feature, latlng) {
return L.marker(latlng, {icon: baseballIcon});
},
2012-02-14 23:02:29 +08:00
2012-07-28 14:41:12 +08:00
onEachFeature: onEachFeature
}).addTo(map);
2012-02-14 23:02:29 +08:00
2011-06-18 00:45:04 +08:00
</script>
</body>
2012-02-14 23:02:29 +08:00
</html>