<script type="text/javascript">
<!--
function showMap(position) {
/*位置情報を表示する*/
var coords = position.coords;
alert('緯度: ' + coords.latitude + ', 経度: ' + coords.longitude);
}
function handleError(error) {
/*取得失敗のアラートを表示する*/
alert('位置情報を取得できません。');
}
function getGeoLocation(){
if (navigator.geolocation && typeof navigator.geolocation.getCurrentPosition == 'function') {
/*位置情報を取得可能な場合*/
navigator.geolocation.getCurrentPosition(showMap,handleError);
}
else {
/*位置情報を取得不可能な場合*/
handleError();
}
}
//-->
</script>
<script type="text/javascript"></script>
<a href="javascript:void(0);" onclick="getGeoLocation();">現在置を確認する</a>
このサンプルを実行すると、緯度と経度をアラートで表示します。
Mac(Snow Leopard 10.6.3)のSafari(5.0)とFirefox(3.6.3)で試してみたところ、なぜか位置情報を取得できました。取得までに数秒かかりますが、iPhoneよりも正確です。地図で確認したい場合は、Googleマップで十字カーソルの下にある「○」をクリックしてみてください。
iMacにはGPSは付いていなかったと思うので、一体どうやって位置情報を取得しているのでしょう。Wi-Fiを利用しているのでしょうか? いずれにせよ、こうもピッタリと位置を当てられると、ちょっと恐い気もします。
ちなみに、取得したpositionオブジェクトには、次の情報が含まれているようです。
position.coords.latitude | 緯度 |
position.coords.longitude | 経度 |
position.coords.accuracy | 精度(単位=m?) |
position.coords.altitude | 高度 |
position.coords.altitudeAccuracy | 高度の精度 |
position.coords.heading | 方角 |
position.coords.speed | 速度 |
position.timestamp | 取得時?の日時(ミリ秒) |
0 件のコメント:
コメントを投稿