getCurrentPositionを使用して緯度と経度の座標を表示しようとしていますが、何も表示されません。私はブラウザがそれを受け入れ、エラーメッセージがポップアップしないかどうかを調べるためにテストします。getCurrentPosition()は表示されません - javascript
のJavascript:
getCurrentPositionを使用して緯度と経度の座標を表示しようとしていますが、何も表示されません。私はブラウザがそれを受け入れ、エラーメッセージがポップアップしないかどうかを調べるためにテストします。getCurrentPosition()は表示されません - javascript
のJavascript:
window.onload = Location;
var x = document.getElementById("location");
function Location() {
if (navigator.geolocation) {
navigator.geolocation.watchPosition(show);
} else {
x.innerHTML = "Not working";
}
}
function show(position) {
x.innerHTML = position.coords.latitude;
}
if (navigator.geolocation)
方法はnavigator.geolocation
としてここに動作しないにかかわらず、位置を得ることができるかどうかの、空のオブジェクトです。これを確認するにはconsole.log(navigator.geolocation)
があります。 https://developer.mozilla.org/en-US/docs/Web/API/PositionError
function getLocation() {
navigator.geolocation.watchPosition(showPosition, throwError);
}
function throwError(err) {
switch (err.code) {
case 1: x.innerHTML = "Permission denied."; break;
case 2: x.innerHTML = "Position unavailable."; break;
case 3: x.innerHTML = "Request timed out."; break;
default: x.innerHTML = "Unknown error.";
}
}
https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/watchPositionはまた、注意すべきいくつかの重要なブラウザの癖があります。
は代わりに、navigator.geolocation.watchPosition
のエラーコールバックパラメータを使用します。あなたのローカルファイルシステム、クロームブロックジオロケーション要求にあなたのサイトをテストしている場合
:まだが正しくエラーコールバックを処理しませんFirefoxの HTML 5 Geo Location Prompt in Chrome
と(回避策を表示するには、スクロールダウン):Is there a way to check if geolocation has been DECLINED with Javascript?
JSFiddleはデフォルトでonloadイベントでコードを実行するため、loadイベントが既に発生しているので、 'window.onload = getLocation; 'を設定しないでください –