変数 = navigator.geolocation.watchPosition成功時および失敗時の処理、オプション設定などを引数に設定する点は同じですが、1つ違っているのは「返り値を持っている」という点です。、この返り値はwatchIdと呼ばれるもので、GPS機能の監視に割り当てられるIDです。
(onSuccess, onError, options);
navigator.geolocation.clearWatch( watchId );watchPositionも、やはりonSuccessの関数だけ設定してあれば使うことができます。下に、先ほどのサンプルをwatchPosition利用に書き換えたものを挙げておきます。ページをロードするとGPSアクセスを開始し、ボタンを押すと停止します。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Test</title> <style> body { padding:5px; } h1 { font-size:18pt; background-color:#EEEEFF; } </style> <script type="text/javascript"> <!-- var counter = 0; var watchId = 0; function doAction(){ watchId = navigator.geolocation.watchPosition(getPosition); } function getPosition(p){ var lat = p.coords.latitude; var lng = p.coords.longitude; document.getElementById("msg").innerHTML = ++counter + ": " + lat+"," + lng; } function doCheck(){ navigator.geolocation.clearWatch(watchId); } // --> </script> </head> <body onload="doAction();"> <h1>GPS Sample</h1> <div id="msg"></div> <button onclick="doCheck();">Click</button> </body> </html>
<< 前へ | 次へ >> |