(() => { // 例: GeoJSONファイルを leaflet-ajax でロードする var jsonmap = L.map("anzen"); var layer = L.tileLayer( 'https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png', {attribution: '© 国土地理院' }).addTo(jsonmap); var anzenlayer = new L.GeoJSON.AJAX("anzen.geojson",{ onEachFeature: function(j, layer) { let p = j.properties; if (p) { let name = p.name, desc = p.description; if (p.name) { if (desc) { // {{画像URL}} → に置換する desc = desc.replace(/{{(.*)}}/, '') } let popup = "

" + name + "

" + "

" + desc + "

"; layer.bindPopup(popup); } } }}); anzenlayer.addTo(jsonmap); anzenlayer.on('data:loaded', function() { jsonmap.fitBounds(anzenlayer.getBounds()); // alert(JSON.stringify(anzenlayer.toGeoJSON())); // anzenlayer.toGeoJSON() で元のGeoJSONが得られる }); L.control.layers(null, {"Triangle": anzenlayer}).addTo(jsonmap); })();