iPhone 現在地表示 GPSナビ
2011.09.20
この記事は最終更新日から1年以上が経過しています。
iPhoneにはiOSというOSが使われており、
iOS3.0からiPhone内蔵webブラウザ「safari」上で動くjavascriptに
GPSデータの取得機能が追加されています。
safariに搭載されているGPS関連機能はW3CのGeolocationAPIに準拠し、
FireFox3.5でも動作させることが可能です。
navigatorオブジェクト内にgeolocationオブジェクトが用意されていて、
取得方法は
navigator.geolocation.getCurrentPosition() 現在の位置情報
navigator.geolocation.watchCurrentPosition() 現在地を定期的に監視
navigator.geolocation.clearWatch() watchPosition()での監視を中止
となっています。
定期的に取得するのなら
watchPosition()を使用。
watchPosition(update)で値を取得するとupdate関数が呼ばれるように記述。
オブジェクト内には
これらの情報が格納されています。
経度、緯度等の取得
HTML
<div id="location">lat,lng,accuracy</div>
JavaScript
<br />
<script type="text/javascript"><br />
window.onload = function(){<br />
navigator.geolocation.watchPosition(update);<br />
}<br />
関数実行させる。
//位置が検出されたら緯度、経度、誤差と時間を表示<br />
function update(position){<br />
var lat = position.coords.latitude; //緯度<br />
var lng = position.coords.longitude; //経度<br />
var acc = position.coords.accuracy; //誤差<br />
document.getElementById("location").innerHTML ="緯度:"+lat+",<br />
<br>経度:"+lng+",<br />
<br>誤差:"+acc+"<br>更新時間:"+(new Date());<br />
}<br />
</script>
(その他スタイル等は任意で。)
デモ


















