Moin Moin,
nachdem sich die Sonne wieder zurück gezogen hat, gehts wieder fleißig ans Werk (Projekt)
Ich habe ein Problem beim zentrieren der Karte, allerdings nur, wenn ich zusätzlich Marker einblende.
Die Funktion zum zentrieren der Karte:
// Position und Zoomstufe der Karte
lon = 9.8785;
lat = 53.47937;
zoom = 12;
// An die richtige Stelle springen..
//jumpTo(lon,lat,zoom);
map.setCenter(
new OpenLayers.LonLat(lon, lat).transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject()
),zoom
);
Hier wird die karte korrekt zentriert. Blende ich allerdings Marker ein sieht das ganze so aus und die Karte wird nicht zentiert:
layer_markers = new OpenLayers.Layer.Markers("Marker", {
visibility: true,
displayInLayerSwitcher: false
});
layer_vectors = new OpenLayers.Layer.Vector("Zeichnungen", { displayInLayerSwitcher: true } );
map.addLayer(layer_vectors);
map.addLayer(layer_markers)
layers = new Array();
layer_layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik");
map.addLayer(layer_layerMapnik)
layers.push(new Array(layer_layerMapnik,'layer_layerMapnik'));
setLayer(0);
// Marker hinzufügen
addMarker(layer_markers,13.33574,52.61851,"<img src='/images/ziele/315/thumbs/450x450.jpg' alt='Bild vom Ausflugsziel' title='Bild vom Ausflugsziel' class='popupimage' height='80px'><a href='/ziele/single/id/315/strandbad-luebars.html' target='_blank'>Strandbad Lübars</a> <p> Das beliebte Freibad in Berlin</p>",false,2)
...
Wisst Ihr woran das liegen mag?
Hier ein Beispiel, über die obigen Parameter könnt ihr Lat / Lon / Zoom etc. ändern:
http://www.mapradar.de/map/api/height/500/width/600/zoom/12/lon/9.87850/lat/53.47937
LÖSUNG:
Die Funktion map.setCenter muss nach den Markern aufgerufen werden.