Ankündigung

Einklappen
Keine Ankündigung bisher.

Google Maps und Tabs

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Google Maps und Tabs

    Hallo,

    für die Problematik, dass Google Maps mit Tabs nicht funktioniert, habe ich einen workaround in das Seitenlayout eingebaut ... nicht wirklich sauber, aber ich kann's zumindest jetzt mal bearbeiten.
    Im customelement_tabs_start.html5 lasse ich einen click-event mit erzeugen
    PHP-Code:
    <li onClick="ResetMap()" class="<?php echo $this->field('counts')->value(); ?>">
    Über das Seitenlayout habe ich nun folgendes eingebunden:
    PHP-Code:
    <script type="text/javascript">   

    function 
    ResetMap() {
        
    google.maps.event.trigger(gmap_26'resize'); //zweiter tab
        
    google.maps.event.trigger(gmap_27'resize'); //erster tab
        
    gmap_26.setZoom(18);
        
    gmap_26.setCentercenter );
    };
    </
    script
    beim zweitenmal auf den TAB klicken erscheint dann die Mappe - aber leider nicht zentriert, sondern im Standard links oben.
    Warum greift das .setCenter nicht bzw. wie müsste es angepasst werden?

    Danke für die Hilfe

  • #2
    Hi,
    erstmal daumenhoch, weil anders ist das Problem generell nicht lösbar.

    center ist hier undefined. Entweder muss es in der Funktion definiert werden oder es muss von irgendwo abgerufen (global, aus einem objekt usw.) werden.

    Javascript ist deutlich strikter als z.b. php und sieht nur variablen, die innerhalb der Funktion definiert wurden bzw. nur Variablen, die global (ausserhalb aller Funktionen) definiert wurden.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Hello,
      Danke mal für den Hinweis - aber irgendwie komm ich da überhaupt nicht weiter ... liegt wohl auch daran, dass mein Programmierkenntnisse viel zu minder sind :-(
      Kannst du mir hier weiterhelfen? Wie frage ich denn die aktuellen bzw. die eingetragenen Koordinaten ab und wo müsste ich das dann stehen?

      Wenn ich das center je map direkt eintrage, komme ich auch auf kein Ergebnis ...
      Hätte mal das hier
      Code:
      [COLOR=#000000][COLOR=#007700]<[/COLOR][COLOR=#0000BB]script type[/COLOR][COLOR=#007700]=[/COLOR][COLOR=#DD0000]"text/javascript"[/COLOR][COLOR=#007700]>   
      var center_gmap_26 = new google.maps.LatLng(48.6627711, 15.6534087[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700]);
      function [/COLOR][COLOR=#0000BB]ResetMap[/COLOR][COLOR=#007700]() {
          [/COLOR][COLOR=#0000BB]google[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]maps[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]event[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]trigger[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]gmap_26[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]'resize'[/COLOR][COLOR=#007700]); [/COLOR][COLOR=#FF8000]//zweiter tab
          [/COLOR][COLOR=#0000BB]google[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]maps[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]event[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]trigger[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]gmap_27[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]'resize'[/COLOR][COLOR=#007700]); [/COLOR][COLOR=#FF8000]//erster tab
          [/COLOR][COLOR=#0000BB]gmap_26[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]setZoom[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]18[/COLOR][COLOR=#007700]);
          [/COLOR][COLOR=#0000BB]gmap_26[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]setCenter[/COLOR][COLOR=#007700]( [/COLOR][COLOR=#0000BB]center_gmap_26 [/COLOR][COLOR=#007700]);
      };[/COLOR]
      [COLOR=#0000BB]</script>[/COLOR] [/COLOR]
      Danke

      Kommentar

      Lädt...
      X