• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Neue Map und Opera

NelliOWL

Geocacher
Gut zu lesen, dass es nicht nur mir so geht. Habe versucht, beide im Netz kursierende Scripts gemäß Anleitung zu installieren und bin leider auch erfolglos.

Aber vielleicht findet sich ja ein Opera-Crack. :hilfe:
 

Sekomen

Geocacher
...gleiches Problem hier.

Wobei ich das Gefühl habe dass die wenigsten Greasemonkey-Skripte auf Opera laufen. Greasemonkey scheint doch ein wenig mehr zu sein als nur eine Scriptverwaltung
 

Screami

Geocacher
Beim parallel installierten Firefox hats direkt geklappt, bei Opera hab ichs nach mehrmaligem Versuchen auch aufgegeben.
 

nightjar

Geowizard
Das ist kein Problem von Geocaching.com, sondern vom Skript. Bitte im richtigen Unterforum schreiben. Daher :verschoben:

nightjar
Moderator
 

Oisín

Geocacher
Das Problem bei Opera ist die Reihenfolge, in der die Skripte geladen werden. Wenn die Skript-Datei *.user.js heißt, wird sie scheinbar nach den Skripts der Seite geladen. Heißt sie jedoch *.js, dann erfolgt das Laden als erstes. Ersteres ist nicht gut, da dann die Liste mit den möglichen Layern nicht noch einmal aufgebaut wird. Letzteres ist doof, da das Groundspeak-Objekt, das im Skript verwendet wird, noch nicht da ist. Ich habe das wie folgt gelöst (abgespeichert als *.js-Datei):
Code:
// ==UserScript==
// @name           Geocaching.com Google maps
// @namespace      gccomgoooglemaps
// @include        http://www.geocaching.com/map/*
// ==/UserScript==

opera.addEventListener('AfterScript',function (e) {
  if (e == null) return;
  if (e.element == null) return;
  if (e.element.getAttribute('src') == null) return;

  if( e.element.getAttribute('src').match(/groundspeak\.map\.js$/) ) {
    opera.removeEventListener('AfterScript',arguments.callee,false);

    if (navigator.appName.indexOf('Opera') == -1) {
      layers = unsafeWindow.Groundspeak.Map.MapLayers;
    } else {
      layers = Groundspeak.Map.MapLayers;
    }

    //alternativ geht auch layers.unshift zum Einfügen am Anfang 
    layers.push(
      {tileUrl:"http://mt.google.com/vt?x={x}&y={y}&z={z}",name:"googlemaps",alt:"Google Maps",attribution:"Google maps",subdomains:"1234",tileSize:256,minZoom:0,maxZoom:18});
   
    layers.push(
      {tileUrl:"http://mt0.google.com/vt/lyrs=s@110&hl=de&x={x}&y={y}&z={z}",name:"googlemaps",alt:"Google Maps (Satellite)",attribution:"Google maps",subdomains:"1234",tileSize:256,minZoom:0,maxZoom:20});

    layers.push(
      {tileUrl:"http://mt0.google.com/vt/lyrs=y@110&hl=de&x={x}&y={y}&z={z}",name:"googlemaps",alt:"Google Maps (Hybrid)",attribution:"Google maps",subdomains:"1234",tileSize:256,minZoom:0,maxZoom:20});

    layers.push(
      {tileUrl:"http://mt0.google.com/vt/v=w2p.110&hl=de&x={x}&y={y}&z={z}",name:"googlemaps",alt:"Google Maps (Terrain)",attribution:"Google maps",subdomains:"1234",tileSize:256,minZoom:0,maxZoom:18});

  }
},false);
 

Oisín

Geocacher
Ich habe diese Version auch schon an den Ersteller des Skriptes geschickt aber ich bekomme keine Reaktion. Es wäre ja sinnvoll, die Änderungen auch in seine Version aufzunehmen, da diese überall verlinkt ist und leider so nicht mit Opera funktioniert.
 
Oben