Archiv:

Latest photoblog

photoblog

Blog » W3C Geolocation API Polyfill

W3C Geolocation API Polyfill

Ich habe meine freie Zeit gerade etwas genutzt um ein Javascript zu erstellen, mit dem man aus dem Browser heraus auf eine einheitliche Geolocation API zugreifen kann. Aktuell unterstützt das Script offiziell die folgenden Browser:

  • Android Webkit
  • Android Dolphin HD
  • Apple iPhone/iPod Safari iOS 3.0+
  • Blackberry OS 4.1+
  • Firefox 3.5+
  • Firefox < 3.5 mit Geode Addon
  • Google Chrome
  • Opera 10.6+
  • Alle Browsers mit installiertem Google Gears

Andere Browser bieten zur Zeit keine Unterstützung für Geolocation (korrigiert mich bitte wenn ich einem Browser Unrecht tue).

Wie wird das Script verwendet?

Das Script muss einfach vor dem ersten Geolocation Request eines Dokuments mittels <script src="geolocation.js"></script> eingebunden werden. Danach kann einheitlich durch navigator.geolocation.* auf die Methoden aus dem W3C Standard zugegriffen werden. Namentlich sind das getCurrentPosition(), watchPosition() und clearWatch().

Das Script mappt dann die proprietären Abfragemethoden (Blackberry Location, Google Gears) auf das navigator.geolocation Objekt und stellt eine einheitliche API zur Abfrage bereit.

Demo

http://www.manuel-bieh.de/publikationen/scripts/geolocation/demo.html

Download

Das Script gibt es bei Github und auf Google Code. Zieht es euch dort, wo es euch lieber ist. Ich halte für gewöhnlich beide Versionen auf dem aktuellen Stand
Google Code: http://code.google.com/p/better-geolocation-api/
Github: https://github.com/manuelbieh/Geolocation-API-Polyfill

2 Kommentare zu “W3C Geolocation API Polyfill”

  1. Grafik: GravatarNina:

    Hi,

    nice article. I wonder if you also know how to implement the geolocation function for some applications where you can sign is as a service provider and choose where your business is and how far from that point you offer your services.

    Thanks in advance,
    Nina

  2. Grafik: Gravatarigor:

    Der API Schlüssel auf der Demoseite ist abgelaufen :)

Die Trackback-URL lautet