x

Re: Mehrere Karten auf einer Seite + Adressumrechnung


Geschrieben von wellseo (Gast) am 08. Februar 2013 13:34:56: [flux]

Als Antwort auf: Mehrere Karten auf einer Seite + Adressumrechnung geschrieben von wellseo (Gast) am 07. Februar 2013 11:57:

Servus Gemeinscht, Wolf und geri-oc. Vielen Dank für Eure Hilfestellungen und Bemühungen!

Wolf, ich bin deinem Beispiel ( http://www.netzwolf.info/kartografie/op … /multi.htm ) gefolgt und habe mir den Code angeschaut. Ok, bei Dir funktioniert es. Ich habe den Code kopiert und bei mir eingefügt. Trotz dessen, erhalte ich noch keine Karten angezeigt. Dort wo die Karten erscheinen sollen, wird zwar ein Code fabriziert, aber das Resultat ist optisch nicht ersichtlich. Eine CSS-Anweisung, welche jenes versteckt, existiert meiner Prüfung nach nicht. Darauf habe ich keine Hinweise. Auch wird die ID, welche in der ersten Karte verwendet wird, irgendwie nicht richtig erzeugt. Ich poste man den Code und erörtere das.

Hier das Krams im <head>:

<script␣type="text/javascript"␣src="http://www.openlayers.org/api/OpenLayers.js"></script>
<script␣type="text/javascript"␣src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js"></script>
<script␣type="text/javascript"␣src="<?php␣echo␣get_template_directory_uri();␣?>/js/tom.js"></script>
<script␣type="text/javascript">
function␣drawMap(id,␣lon,␣lat,␣zoom)␣{
//----------------------------------------------------------------------------
//	id:␣id␣des␣zugehörigen␣<div>
//----------------------------------------------------------------------------
var␣map␣=␣new␣OpenLayers.Map␣(id,␣{controls:␣[]});
//----------------------------------------------------------------------------
//	Default-Koordinatensystem␣fuer␣alle␣Controls
//----------------------------------------------------------------------------
map.displayProjection␣=␣new␣OpenLayers.Projection("EPSG:4326");
//----------------------------------------------------------------------------
//	Kartenlayer
//----------------------------------------------------------------------------
map.addLayer␣(new␣OpenLayers.Layer.OSM.Mapnik('KartenId:␣'␣+␣id));
//----------------------------------------------------------------------------
//	Positioniere␣auf␣die␣angegebene␣Position
//----------------------------------------------------------------------------
var␣lonLat␣=␣new␣OpenLayers.LonLat(lon,␣lat).
transform(map.displayProjection,␣map.getProjectionObject())
map.setCenter␣(lonLat,␣zoom);
};
var␣mapIdSequence␣=␣0;
function␣drawMaps␣()␣{
var␣divElements␣=␣document.getElementsByTagName('div');
for␣(divIndex=0;␣divIndex<divElements.length;␣divIndex++)␣{
var␣div␣=␣divElements[divIndex];
var␣title␣=␣div.title␣||␣'';
if␣(title.substring(0,4)␣!=␣'map␣')␣continue;
var␣idLonLatTitle␣=␣title.split('␣',␣5);
var␣id␣=␣'map'␣+␣++mapIdSequence;
div.id␣␣␣␣=␣id;
div.title␣=␣idLonLatTitle[4];
drawMap(id,␣idLonLatTitle[1],␣idLonLatTitle[2],␣idLonLatTitle[3]);
}
}
//-->
</script>

Mein <body>-Anfang:

<body␣<?php␣body_class();␣?>␣onload="drawMaps()">

Und nun ein Artikel (dies der Code, wie er noch im Editor steht):

<div␣title="map␣<?php␣the_ID();␣?>␣50␣13␣Karte␣Nummer<?php␣the_ID();␣?>"␣style="height:200;␣width:200;␣background:␣gray"></div>

So. Gespeichert, hochgelad und jene Seite aufgerufen, wo die Karten erscheinen sollten. Ich poste die Kartenausgabe von den ersten drei Artikeln, damit ersichtlich wird, das die Karte des ersten Artikels irgendwie nicht richtig verarbeitet wird. Komisch daran ist, dass der title="xyz" nicht so aussieht, wie er aussehen sollte. Auch erscheint ein id="map1". In den anderen Artikeln nicht. Aber seht/vergleicht bitte selbst.

Artikel 1 / Karte 1 (der Code, welchen ich im Browser zurück bekomme):

<div␣style="height:200;␣width:200;␣background:␣gray"␣title="Karte"␣id="map1"></div>

Artikel 2 / Karte 2 (der Code, welchen ich im Browser zurück bekomme):

<div␣style="height:200;␣width:200;␣background:␣gray"␣title="map␣40358␣50␣13␣Karte␣Nummer40358"></div>

Artikel 3 / Karte 3 (der Code, welchen ich im Browser zurück bekomme):

<div␣style="height:200;␣width:200;␣background:␣gray"␣title="map␣39507␣50␣13␣Karte␣Nummer39507"></div>

Auch wenn nur der erste Artikel komisch erscheint, werden alle nicht angezeigt. Wisst Ihr einen Rat?