MediaWiki:Gadget-mapwiki.js
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
mw.loader.using(['mediawiki.util'], function () {
function addCss(url){
if(document.querySelector('link[href="'+url+'"]')) return;
var l=document.createElement('link');
l.rel='stylesheet'; l.href=url;
document.head.appendChild(l);
}
function addScript(url){
return new Promise(function(resolve,reject){
if(document.querySelector('script[src="'+url+'"]')) return resolve();
var s=document.createElement('script');
s.src=url; s.onload=resolve; s.onerror=reject;
document.head.appendChild(s);
});
}
function init(el){
if(el.dataset.ready) return;
el.dataset.ready='1';
var map = L.map(el).setView([47.72, 15.95], 10);
// --- basemap.at ---
var luftbild = L.tileLayer(
'https://mapsneu.wien.gv.at/basemap/bmaporthofoto30cm/normal/google3857/{z}/{y}/{x}.jpeg',
{ attribution:'basemap.at', maxZoom:20 }
);
var overlay = L.tileLayer(
'https://mapsneu.wien.gv.at/basemap/bmapoverlay/normal/google3857/{z}/{y}/{x}.png',
{ attribution:'basemap.at', maxZoom:20 }
);
var standard = L.tileLayer(
'https://mapsneu.wien.gv.at/basemap/geolandbasemap/normal/google3857/{z}/{y}/{x}.png',
{ attribution:'basemap.at', maxZoom:20 }
);
// Kombination: Luftbild + Straßen
var luftbildStrassen = L.layerGroup([luftbild, overlay]);
// --- OSM ---
var osm = L.tileLayer(
'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
{ attribution:'© OpenStreetMap-Mitwirkende', maxZoom:19 }
);
// --- Topo ---
var topo = L.tileLayer(
'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',
{ attribution:'© OpenTopoMap / OSM', maxZoom:17 }
);
// Startlayer
luftbildStrassen.addTo(map);
// Layer-Control
L.control.layers(
{
'Luftbild + Straßenkarte': luftbildStrassen,
'Luftbild': luftbild,
'Straßenkarte (OSM)': osm,
'Topo': topo
},
null,
{ collapsed:false }
).addTo(map);
}
addCss('/leaflet/leaflet.css');
addScript('/leaflet/leaflet.js').then(function(){
document.querySelectorAll('.mw-mapwiki').forEach(init);
});
});