Kennt sich einer mit Google-Maps gut aus, also der API?

  • Stehe hier vor einem Problem, das mich schon seit Jahren nervt, aber irgendwie komme ich da nicht dran vorbei. Mein Problem ist, dass Google erst mal die Karte von DE anzeigt, Center-Position ist aber richtig, Zoom ist nur viel zu klein. Und dann, wenige Sekunden später geht er auf den entsprechenden Zoom-Level. Schaut halt doof aus, wenn da erst eine Karte ist, dann verschwindet und dann eine andere kommt zumal die ersten Karten ja auch geladen werden müssen.

    Hat einer eine Idee?

    Ich weiß nur, dass es damit zusammenhängt:

    var myOptions = {
    zoom: 2,
    center: center,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    }

    // Map starten
    map = new google.maps.Map(document.getElementById('mapdiv'), myOptions);

    if(jsonResponse)
    {
    map.fitBounds(centerBounds);
    }

    Also am Anfang der normale Aufruf, dann das "fitBounds", denn genau hier wird der Zoom an den Viewport angepasst.

    Und genau da drehe ich mich im Kreis....

    new google.maps.Map muss zuerst ausgeführt werden, da sonst "map" nicht da ist. Es startet also mit den Defaultwerten. Erst dann kommt das map.fitBounds und genau hier ist der Sprung in der Darstellung.

    Ach ja, das ist erst seit Api 3 so. Mit Api 2 konnte man initialisieren, fitBounds und dann starten. Initialisieren und Starten ist bei der v3 nun aber kombiniert.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(