Google Maps HTML5 don't work on my phone (Safari browser)

Go To StackoverFlow.com

0

I'm currently upgrading to the "new" HTML5 version of Google Maps Geolocation API and I have some problems. The function works perfectly on my computer but not on my phone with the Safari browser. The code is as follows:

if(navigator.geolocation) {

    navigator.geolocation.getCurrentPosition(function(position) {
        var latitude = position.coords.latitude;
        var longitude = position.coords.longitude;
        var speed = position.coords.altitude;
        var coords = new google.maps.LatLng(latitude, longitude);
        alert(position.coords.speed);
        var mapOptions = {
                          zoom: 15,
                          center: coords,
                          mapTypeControl: true,
                          navigationControlOptions: {
                              style: google.maps.NavigationControlStyle.SMALL
                          },

                          mapTypeId: google.maps.MapTypeId.ROADMAP
                         };

        map = new google.maps.Map(
            document.getElementById('weather-map'), mapOptions
        );

        var marker = new google.maps.Marker({
            position: coords,
            map: map
        });
    });

} else {
    alert('Geolocation API stöds inte i din webbläsare');
}

If I set an alert() right after if(navigator.geolocation) { and update the page on my phone, the alert window will appear but if I move the alert() and set it after navigator.geolocation.getCurrentPosition(... it will not show. I have tested if the browser is capable to this API and it is.

How can I fix this problem?

Thanks in advance.

2012-04-05 21:15
by Erik


0

I got it working! :) I missed some important lines like the functions initialize() and show_position(p) to get the position through Stan Wiechers "geo-location-javascript".

2012-04-06 03:04
by Erik
Ads