JSはユーザの地理位置を取得します.

1592 ワード

ユーザの地理的位置を取得するためのキーアプリ:
navigator.geolocation.get CurrenntPosition(
showPosition
を選択します.
showError
を選択します.
オプト
)
三つのパラメータはそれぞれ表します.
showPosition:
必ず選択して、成功したコールバックを実行します.
showError:
オプションで、エラーのコールバックを実行します.
オプト
:オプションで、データ取得の方式を設定します.
showPositionのプロパティ
coords.accuracy:
位置の精度を取得する
coords.altitude:
海抜取得(メートル)
coords.altitudeAccuraacy:
取得位置の海抜精度
coords.heading:
取得方向
coords.latitude:
緯度を取得
coords.longitude:
経度をとる
coords.speed:
速度を取得
timestamp:
対応する時間を取得します.
showError属性
PERMISSION_DENIED:
ユーザがページの開始を拒否する地理的な場所
POSITION_UNAVAILAVLE:
現在位置を取得できませんでした.
タイムアウト
optionパラメータ
enableHighAcuracy:
ハイ精鋭モード(ブール値)を開始するかどうか
maximAge:
位置決めキャッシュの失効時間を設定します.(ミリ秒、0はキャッシュ無効)
タイムアウト:
位置決め情報の取得時を設定します(タイムアウトトリガErrCallback)
具体例は以下の通りです.
var option = {
	enableHighAccuracy:true, //          
	maximumAge:0,  //    
	timeout:30000  //        30    
}
if(navigator.geolocation){  //      Geolocation API
	navigator.geolocation.getCurrentPosition(showPosition,showError,option)
}
function showPosition(position){
		var lat = position.coords.latitude;  //    
		var lon = position.coords.longitude;  //    
		alert("     :"+lat+ ",   :"+lon);
}
function showError(error){
	switch(error.code){
		case error.PERMISSION_DENIED:
		alert("          ");
		break;
		case error.POSITION_UNAVAILABLE:
		alert("        ");
		break;
		case error.TIMEOUT:
		alert("  ");
		break;
	}
}