Bad Elf 2300の位置情報をキャプチャするhtmlファイル
常日頃から御指導頂いているSさんから、Bad Elf 2300の位置情報をキャプチャするhtmlファイルの内容を教えて頂いた。忘れないように、残しておく。
Bad ElfをBTでリンクしたiPadで稼働を確認済み(iPhoneでは稼働確認できなかった)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>geolocation-sample</title>
</head>
<body>
<div id="output"></div>
<script>
var output = document.getElementById('output');
// 位置情報の取得に成功した際のコールバック
const successCallback = (position) => {
console.log(position);
output.innerHTML += "<P>==========";
output.innerHTML += "<P>time:" + position.timestamp;
output.innerHTML += "<P>latitude:" + position.coords.latitude;
output.innerHTML += "<P>longitude:" + position.coords.longitude;
output.innerHTML += "<P>altitude:" + position.coords.altitude;
output.innerHTML += "<P>accuracy:" + position.coords.accuracy;
output.innerHTML += "<P>altitudeAccuracy:" + position.coords.altitudeAccuracy;
output.innerHTML += "<P>heading:" + position.coords.heading;
output.innerHTML += "<P>speed:" + position.coords.speeed;
};
// 位置情報の取得に失敗した際のコールバック
const errorCallback = (err) => {
console.log(err);
output.innerHTML += "Error\n";
};
// 位置を監視する構成オプション
// オプションの内容は次のリンクに書かれています。
// https://developer.mozilla.org/ja/docs/Web/API/PositionOptions
const options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0
};
let watchPositionID;
window.onload = () => {
// navigator.geolocation.watchPositionについては次のURLにかかれています。
// https://developer.mozilla.org/ja/docs/Web/API/Geolocation/watchPosition
watchPositionID = navigator.geolocation.watchPosition(successCallback, errorCallback, options);
};
// ブラウザーを閉じる前に位置の監視を止めます
window.onbeforeunload = () => {
navigator.geolocation.clearWatch(watchPositionID);
}
</script>
</body>
</html>