OpenLayer-Problem / Marker aus Liste

Hallo!
Ich bin momentan dabei, mit Hilfe von OpenLayer eine Karte mit diversen Marker und dazugehörigen Popups zu erstellen. Da ich ich nicht alle Informationen und Texte dafür in die HTML-Datei schreiben möchte, soll das ganze mittels einer txt-Datei ordentlich gestaltet werden. Diesen Code habe ich verwendet, um erstmal ein wenig mit OpenLayer zu experimentieren, ich habe es auch geschafft, die Abfrage der txt-Datei mittels dieses Codes zu integrieren. Allerdings wird beim Klick auf den Marker kein Popup geöffnet, obwohl in der txt-Datei die Daten wie im Beispiel eingetragen sind.

Kann mir jemand weiterhelfen?

Hast Du den richtigen Pfad zur txt-datei im javascript eingegeben?

Die Marker werden korrekt angezeigt, deshalb gehe ich davon aus, dass der Pfad korrekt ist.

var pois = new OpenLayers.Layer.Text( "My Points",
                    { location:"./textfile.txt",
                      projection: map.displayProjection
                    });
            map.addLayer(pois);

Die Datei liegt im gleichen Ordner wie die HTML-Datei, die *.js werden ja direkt vom OpenLayer-, bzw. OpenStreetMap-Server geladen.

Ich weiß nicht, ob es des Rätsels Lösung ist: Bei mir schaut der “projection”-Teil etwas anders aus:


projection: new OpenLayers.Projection("EPSG:4326")

Oder gesamt:


            OpenLayers.Lang.setCode('de');

            map = new OpenLayers.Map('map',
                    { maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
                      numZoomLevels: 19,
                      maxResolution: 156543.0399,
                      units: 'm',
                      projection: new OpenLayers.Projection("EPSG:900913"),
                      displayProjection: new OpenLayers.Projection("EPSG:4326")
                    });

            map.addControl(new OpenLayers.Control.PanZoomBar());        // Zoombalken
            map.addControl(new OpenLayers.Control.ScaleLine());        // Anzeige Massstab
            map.addControl(new OpenLayers.Control.MousePosition());        // Koordinate des Mauszeigers 
    
            var layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik");

            var layerTah = new OpenLayers.Layer.OSM.Osmarender("Tiles@Home");

            map.addLayers([layerMapnik,layerTah]);

            var pois = new OpenLayers.Layer.Text( "My Points", { location:"./textfile.txt", projection: new OpenLayers.Projection("EPSG:4326")} );
            map.addLayer(pois);

            map.setCenter(new OpenLayers.LonLat($lon,$lat).transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913")), $zoom);
        }

Die Text-Datei ist sehr sensibel auf Schreibfehler, wenn nicht alle tab-Trennzeichen an der richtigen Stelle stehen. Ich habe es nur in OpenOffice geschafft, den Überblick zu behalten.
Auf die Dauer ist die Methode mit Text-Datei weniger flexibel als mit Programmcode, besonders, wenn in der Textbox mehr stehen soll. Ich habe versucht, den Code einigermaßen übersichtlich auseinander zu nehmen. Vielleicht hilft dir das:
http://wiki.openstreetmap.org/wiki/OSMplusOpenLayers

Ich danke Euch allen erstmal für Eure Hilfe. Ich werde es dann wohl doch eher wieder mit den Markern im Programmcode versuchen, die Übersichtlichkeit der txt-Datei ist ja wirklich nicht besonders groß. Über den Weg im Programmcode müsste es ja dann auch möglich sein, den anzuzeigenden Text aus einer HMTL-Datei zu ziehen, oder?

Ja, in meinem Beispiel etwa so:

var boxTextHtml1 = 'Hier steht ein <b>HTML-Text</b> <br>usw.'; 

Achtung, in javascript dürfen in einem Befehl keine Zeilenumbrüche sein, also den ganzen HTML-Text in einer Zeile!

Mit dem Text aus einer Datei habe ich jetzt noch ein kleines Problem. Und zwar wird der (Text-)Inhalt aus der Datei textversuch.html nur dann im Popup angezeigt, wenn ich es über iframe probiere:

var boxTextHtml1 = '<iframe src="userdat/textversuch.html"> ...

Das ist zwar kein Beinbruch, ist aber etwas unschön, da im Popup dann natürlich auch ein iframe eingebettet wird, was eigentlich nicht ganz so mein Ziel war. Gibt es da noch eine elegantere Möglichkeit oder bleibt mir da nur der Weg über die Formatierungsoptionen, sprich “border” etc.?

Hallo Forum,
leider weiss ich nicht wie man sich aus dem Forum abmeldet
(User loeschen) und die entsprechende Frage aus dem Index loescht.
Wenn bitte einer der Administratoren das fuer mich erledigen wurde.
Vielen Dank fuer die Muehe

will mehrere layer die deckkraft vergleichen.mit zwei slider.wer hat eine ahnung wie das geht