0

ブラウザからユーザーの緯度と経度を取得する必要がありますが、ほとんどのブラウザにはそれを許可しないいくつかの制限があります。地理位置情報がオフになっている、または単にサポートしていないことをユーザーに伝える方法は?

私はこのようなことを試しましたが、私のMacのiPadもSafariも何もプロンプトを表示しませんでした。

if (navigator.geolocation)
    navigator.geolocation.getCurrentPosition(success);
else
    alert('not supported');
4

2 に答える 2

2

デモ: http://jsfiddle.net/7sRdS/

if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(function(position) {  
        // ... 
    }, function(error) {
        //error handling
        switch(error.code) {
            case error.PERMISSION_DENIED:
              //User denied the request for Geolocation.             
              break;
            case error.POSITION_UNAVAILABLE:
              //Location information is unavailable.
              break;
            case error.TIMEOUT:
              //The request to get user location timed out.
              break;
            case error.UNKNOWN_ERROR:
              //An unknown error occurred.
              break;
        }
        alert("Geolocation error: " + error.code);
    },
    {
        timeout:10000 //10s
    });
} else {
    alert("Geolocation services are not supported by your browser.");
} 
于 2013-08-26T08:17:45.227 に答える
0

複数の機能検出テストを提供するmodernizrを見てみましょう。

于 2013-08-26T12:41:57.783 に答える