0

現在、Google Maps Geolocation APIの「新しい」HTML5バージョンにアップグレードしていますが、いくつか問題があります。この機能は私のコンピューターでは完全に機能しますが、Safariブラウザーを搭載した電話では機能しません。コードは次のとおりです。

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');
}

alert()直後に設定if(navigator.geolocation) {して携帯電話のページを更新するとアラートウィンドウが表示されますが、を移動しalert()て設定すると表示されnavigator.geolocation.getCurrentPosition(...ません。ブラウザがこのAPIに対応しているかどうかをテストしましたが、可能です。

この問題を解決するにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

0

動作しました!:)関数のようないくつかの重要な行を見逃し、initialize()StanWiechersshow_position(p)の「geo-location-javascript」を介して位置を取得しました。

于 2012-04-06T03:04:37.737 に答える