現在の方角を取得する
説明
使用しているデバイスがどの方角を向いているかを取得するにはnavigator.geolocation.getCurrentPosition()により取得した位置情報オブジェクトのcoords.headingプロパティを参照します。値は0〜360未満になります(なるはず)。iPhone 3GSにはコンパス機能がありますが、このスクリプトでは方角を示す値は取得することはできません[2010.2.1時点]。
サンプルプログラム
【HTML】
<!doctype html>
<head>
<meta charset="utf-8" />
<title>Sample</title>
<link rel="stylesheet" href="css/main.css" type="text/css" media="all">
</head>
<body>
<h1>向いている方角を取得する</h1>
<div id="result"></div>
<script type="text/javascript" src="js/sample.js"></script>
</body>
</html>
【スクリプト】
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(
function(position){
var hd = position.coords.heading || "方角には未対応です";
var txt = "方角:"+hd;
document.getElementById("result").innerHTML = txt;
}
);
}else{
document.getElementById("result").innerHTML = "Geo Location APIに対応していません";
}