Tweakers,
Ik heb ruzie met de error callback van navigator.geolocation.getCurrentPosition(). Die zou daar als tweede parameter in moeten.
Zo ziet de call eruit in mijn code;
navigator.geolocation.getCurrentPosition(getHtmlPositionHandler, getHtmlPositionErrorHandler, {maximumAge:600000});
getHtmlPositionHandler gaat altijd goed als de browser door de Modernizr.geolocation check heen gaat (die erboven staat) en de user toestemming geeft voor het gebruiken van zijn locatie.
Echter, wanneer de user géén toestemming geeft gaat het mis in IE en FF.
function getHtmlPositionErrorHandler(data) wordt nooit gecalled volgens Firebug en de IE dev tool. Ik werk daar nu omheen door altijd eerst met mijn fallback code (1. GeoIP WS, 2. manuele fallback coördinaten) te callen en vervolgens de navigator.geolocation in te zetten (zodat bij geen toestemming in IE en FF wel een fallback locatie adv IP gebruikt kan worden). Maar het zou natuurlijk mooi zijn als dat in één keer goed ging (scheelt me een JSON call in moderne browsers).
WebKit afstammelingen als Chrome en Safari roepen wel gewoon de getHtmlPositionErrorHandler aan als de gebruiker geen toestemming geeft.
Krijg verder geen JS fouten in de console van Firebug of IE.
Staat o.a. hier beschreven dat het zou moeten werken IMHO;
https://developer.mozilla...olocation#Handling_errors
http://dev.w3.org/geo/api/spec-source.html
Zag wel dat er meer mensen waren met een issue met deze call;
http://stackoverflow.com/...es-works-sometimes-doesnt
Iemand een idee waarom dit niet werkt?
Ik heb ruzie met de error callback van navigator.geolocation.getCurrentPosition(). Die zou daar als tweede parameter in moeten.
Zo ziet de call eruit in mijn code;
navigator.geolocation.getCurrentPosition(getHtmlPositionHandler, getHtmlPositionErrorHandler, {maximumAge:600000});
getHtmlPositionHandler gaat altijd goed als de browser door de Modernizr.geolocation check heen gaat (die erboven staat) en de user toestemming geeft voor het gebruiken van zijn locatie.
Echter, wanneer de user géén toestemming geeft gaat het mis in IE en FF.
function getHtmlPositionErrorHandler(data) wordt nooit gecalled volgens Firebug en de IE dev tool. Ik werk daar nu omheen door altijd eerst met mijn fallback code (1. GeoIP WS, 2. manuele fallback coördinaten) te callen en vervolgens de navigator.geolocation in te zetten (zodat bij geen toestemming in IE en FF wel een fallback locatie adv IP gebruikt kan worden). Maar het zou natuurlijk mooi zijn als dat in één keer goed ging (scheelt me een JSON call in moderne browsers).
WebKit afstammelingen als Chrome en Safari roepen wel gewoon de getHtmlPositionErrorHandler aan als de gebruiker geen toestemming geeft.
Krijg verder geen JS fouten in de console van Firebug of IE.
Staat o.a. hier beschreven dat het zou moeten werken IMHO;
https://developer.mozilla...olocation#Handling_errors
http://dev.w3.org/geo/api/spec-source.html
Zag wel dat er meer mensen waren met een issue met deze call;
http://stackoverflow.com/...es-works-sometimes-doesnt
Iemand een idee waarom dit niet werkt?