Moins,

Nicht nur “quasi”, sondern Du hast mehrere Controls übereinandergelegt:


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"),
controls: [] <–––––––––––––––––––––––––––––––––––––––––––––––––––––––
});

Bitte füge die markierte Zeile ein. Rufst Du “new OpenLayers.Map()” auf ohne einen Parameter “controls:”, dann werden automatisch folgende vier Controls angelegt:


OpenLayers.Control.Navigation()
OpenLayers.Control.PanZoom()
OpenLayers.Control.ArgParser()
OpenLayers.Control.Attribution()

Und insbesondere den “OpenLayers.Control.PanZoom()” willst Du nicht haben :).


[…]
map.addControl (new OpenLayers.Control.PanZoomBar({minZoom: 19}));

Denn jetzt hast Du zwei Zoomleisten übereinander liegen, eine vom Typ PanZoom, und die andere vom Typ PanZoombar.
Das sieht nicht wirklich gut aus.

Außerdem:


map.addControl (new OpenLayers.Control.PanZoomBar({minZoom: 19}));

“minZoom: 19” macht eine sehr :wink: kurze Zoomleiste. Setzt das zum Start mal auf 10.

Gruß Wolf

Edit: Typo