ホームページ ウェブフロントエンド H5 チュートリアル html5_html5 チュートリアル スキルにおける地理的位置測位 API インターフェイスの開発と適用の概要

html5_html5 チュートリアル スキルにおける地理的位置測位 API インターフェイスの開発と適用の概要

May 16, 2016 pm 03:50 PM
api 地理上の位置

地理位置情報のいくつかの方法: IP アドレス、GPS、Wifi、GSM/CDMA

地理位置情報取得プロセス :
1. ユーザーは、地理位置情報を取得する必要がある Web アプリケーションを開きます。
2. アプリケーションはブラウザーに地理的位置を要求し、ブラウザーは地理的位置を共有するかどうかをユーザーに尋ねるクエリをポップアップ表示します。
3. ユーザーが許可すると、ブラウザはデバイスから関連情報をクエリします。
4. ブラウザは関連情報を信頼できる位置サーバーに送信し、サーバーは特定の地理的位置を返します。

HTML5 地理的位置の実装:
1. ユーザーの地理的位置を取得するためのブラウザベースの (バックエンド サポートなし) テクノロジーを実装します
2.地理的位置 (デバイスによって異なりますが、精度は最大 10 メートルです)
3. ユーザーの地理的位置を継続的に追跡します
4. Google マップまたは百度地図と対話して位置情報を表示します

地理位置情報 APIユーザーを接続するために使用されます。現在の地理的位置情報は信頼できるサイトと共有されます。これにはユーザーのプライバシーとセキュリティの問題が伴います。そのため、サイトがユーザーの現在の地理的位置を取得する必要がある場合、ブラウザーはユーザーに「許可」または「」を求めるメッセージを表示します。拒否"。
最初にどのブラウザが Geolocation API をサポートしているかを確認してください:
IE9.0、FF3.5、Safari5.0、Chrome5.0、Opera10.6、iPhone3.0、Android2.0
Geolocation API はナビゲーターに存在しますオブジェクトには 3 つのメソッドのみが含まれています:

コードをコピー
コードは次のとおりです:

1.getCurrentPosition //現在位置
2.watchPosition //監視位置
3.clearWatch //監視をクリア
navigator.geolocation.getCurrentPosition( …, function(error){
switch(error . code){
case error.TIMEOUT :
alert( " 接続がタイムアウトしました。もう一度お試しください" );
break;
case error.PERMISSION_DENIED :
alert( " 接続が拒否されました位置情報共有サービスを使用します。クエリはキャンセルされました" );
break;
case error.POSITION_UNAVAILABLE :
alert( ", 申し訳ありませんが、あなたの惑星では位置情報サービスが一時的に利用できません。" );
break;
}
});

watchPosition は、clearWatch とペアになったトラッカーのようなものです。
watchPosition と clearWatch は、setInterval と clearInterval と少し似ています。
var watchPositionId = navigator.geolocation.watchPosition(success_callback, error_callback, options);
navigator.geolocation.clearWatch(watchPositionId );

HTML 5 は、地理的位置などの一連の API を提供します。まず、HTML 5 をサポートするブラウザでは、API を使用することに同意するかどうかを尋ねられます。それ以外の場合は、API が有効になりません。安全を確保するために。
1. ブラウザが LBS API をサポートしているかどうかを判断するためにオンにします

コードをコピーします
コードは次のとおりです:

function isGeolocationAPIAvailable()
{
var location = "いいえ、このブラウザでは位置情報はサポートされていません。";
if (window.navigator. geolocation) {
location = "はい、このブラウザでは位置情報がサポートされています。";
}
alert(location)
}

まだ displayError があります。メソッド内で例外がキャッチされます。
2. ユーザーの地理的位置を取得します。
getCurrentPosition を使用します。 >
コードをコピーします
コードは次のとおりです: function requestPosition() { if (nav == null) {
nav = window.navigator;
}
if (nav != null) {
var geoloc = nav.geolocation;
if (geoloc != null) {
geoloc.getCurrentPosition(successCallback) ;
}
else {
alert("地理位置情報 API はブラウザでサポートされていません");
}
}
else {
alert("ナビゲータが見つかりません");
}
}


地理的位置が正常に取得されると、返された結果を処理するコールバック メソッドが生成されます




コードをコピーします
コードは次のとおりです: function setLocation(val, e) { document.getElementById(e ).value = val;
}
関数 successCallback(position)
{
setLocation(position.coords.latitude, "緯度"); ;
}



3. 非常によくある質問は、ユーザーの地理的位置の変化を追跡する方法です。

1 watchPosition
例は次のとおりです。



コードをコピー
コードは次のとおりです。

function listenForPositionUpdates() {
if (nav == null) {
nav = window.navigator;
if (nav; != null ) {
var geoloc = nav.geolocation;
if (geoloc != null) {
watchID = geoloc.watchPosition(successCallback)
} else {
alert(" Geolocation API はお使いのブラウザではサポートされていません");
}
} else {
alert("Navigator is not found");
}
}

次に、successCallback で、表示する最新の地理的位置を設定できます:


コードをコピーします コード
function successCallback(position){
setText(position.coords.latitude, "latitude"); setText(position.coords.longitude, "longitude"); >}


リアルタイム追跡が不要な場合は、次のようにキャンセルできます。 🎜>}

4. 例外の処理方法

例外が発生した場合は、それをキャッチできます:



コードをコピーします
コードは次のとおりです。 if (geoloc != null) { geoloc.getCurrentPosition(successCallback, errorCallback); }
function errorCallback(error) {
var message = "";
switch (error.code) {
case error.PERMISSION_DENIED:
message = "この Web サイトにはアクセス許可がありませんuse "
"Geolocation API";
break;
case error.POSITION_UNAVAILABLE:
message = "現在位置を特定できませんでした。";
break;
case error .PERMISSION_DENIED_TIMEOUT:
message = "指定されたタイムアウト期間内に現在位置を特定できませんでした "
";
break;
}
if (message == "") {
var strErrorCode = error.code.toString();
message = "
"不明なエラー (コード: "
" のため、位置を特定できませんでした)。
alert(message);
}



5. Google マップ上に位置を表示します (Google マップ API とその他の設定が設定されている場合)



コードをコピーします

コードは次のとおりです:
function getCurrentLocation() { if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showMyPosition,showError );
}
else
{
alert("いいえ、Geolocation API はこのブラウザではサポートされていません。");
}
}
function showMyPosition(position)
{
var coords=position.coords.latitude ","position.coords.longitude;
var map_url="http://maps.googleapis.com/maps/api/staticmap?center="
座標 "&zoom=14&size=300x300&sensor=false";
document.getElementById("googlemap") .innerHTML="";
}
関数 showError(error)
{
switch(error.code)
{
case error.PERMISSION_DENIED:
alert("この Web サイトには Geolocation API を使用する権限がありません")
break;
case error.POSITION_UNAVAILABLE:
alert("現在位置を取得できませんでした決定されました。")
break;
case error.TIMEOUT:
alert("現在位置を決定できませんでした。") 指定されたタイムアウト期間内に位置を決定できませんでした。")
Break;
case error.UNKNOWN_ERROR:
alert("不明なエラーのため、位置を特定できませんでした。")
Break;
}
}

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Douyin IP の場所を変更する方法 Douyin IP の場所を変更する方法 May 04, 2024 pm 04:36 PM

はい、Douyin の IP の場所は次のように変更できます。Douyin を開いてプロファイルを編集します。都市情報を変更し、表示する都市または地域を選択します。変更を有効にするには、ログアウトしてから再度ログインします。

Amapには携帯電話の登録が必要ですか? Amapには携帯電話の登録が必要ですか? May 05, 2024 pm 05:12 PM

はい、セキュリティ、パーソナライズされたサービス、アカウント管理のため、Amap では携帯電話番号での登録が必要です。登録手順は次のとおりです。Amap アプリを開き、「マイ」および「ログイン/登録」をクリックし、登録する携帯電話番号を選択し、携帯電話番号を入力して確認コードを取得し、パスワードを設定して登録を完了します。

Weiboに写真や動画を投稿する方法 Weiboに写真や動画を投稿する方法 May 03, 2024 am 01:15 AM

Weibo に写真とビデオを同時に投稿する手順は次のとおりです。 関連する写真とビデオ、または補足的な写真とビデオを選択します。 Weibo クライアントを開き、「公開」ボタンをクリックします。 「写真とビデオ」タブを選択します。写真とビデオを追加します (最大 9 枚の写真と 1 つのビデオ)。テキストを入力し、関連情報を追加します。それを公開するだけです。

Douyin の推奨事項をリセットするにはどうすればよいですか?おすすめを特集に変更するにはどうすればよいですか? Douyin の推奨事項をリセットするにはどうすればよいですか?おすすめを特集に変更するにはどうすればよいですか? May 08, 2024 pm 03:52 PM

短いビデオに焦点を当てたソーシャル プラットフォームとして、Douyin のレコメンデーション アルゴリズムはその中核機能の 1 つです。ユーザーの興味や行動に基づいて、関連するビデオ コンテンツを推奨できます。場合によっては、ユーザーが自分の好みに合わせたコンテンツを取得するために推奨アルゴリズムをリセットしたい場合があります。では、Douyin の推奨事項をリセットするにはどうすればよいでしょうか? Douyin のおすすめを特集に変更するにはどうすればよいですか?この記事では両方の質問に答えます。 1.Douyin の推奨事項をリセットするにはどうすればよいですか? 1.Douyin APPを開き、個人のホームページに入ります。 2. 右上隅の「設定」アイコンをクリックして、設定ページに入ります。 3. 設定ページで、「推奨される管理」オプションを見つけてクリックして入力します。 4. レコメンデーション管理ページでは、興味タグと興味の設定を確認できます。異なるものを選択または選択解除できます

TikTokのおすすめ設定を変更する方法 TikTokのおすすめ設定を変更する方法 May 04, 2024 am 12:06 AM

Douyin のおすすめは、「コンテンツ設定」の設定を変更することで変更できます。これには、おすすめの動画タイプの調整、興味のあるクリエイターのフォロー、嫌いなコンテンツのブロック、動画言語の設定、地理的位置制限、話題のトピックのフォロー、検索/閲覧履歴のクリアなどが含まれます。

TikTokで位置情報の許可を変更する方法 TikTokで位置情報の許可を変更する方法 May 03, 2024 pm 11:24 PM

Douyin の位置情報のアクセス許可を変更する手順: 1. Douyin アプリを開き、[自分] をクリックします。 2. 右上隅にある「3 本の横棒アイコン」をクリックします。 3. [設定]を選択します。 4. 「プライバシー設定」を見つけてクリックします。 5. 「位置情報サービス」をクリックします。 6. 必要に応じて、「ターゲティングを許可する」または「使用するときのみ尋ねる」を選択します。 7. 変更後、有効にするためにDouyinアプリケーションを再起動する必要があります。

TikTokのタイムゾーン設定を変更する方法 TikTokのタイムゾーン設定を変更する方法 May 04, 2024 am 01:57 AM

Douyin タイムゾーン設定は変更できません。タイムゾーンは現在の地理的位置に基づいて自動的に設定されます。

Honor スマートフォンで写真の透かしをオフにする方法の紹介 Honor スマートフォンで写真の透かしをオフにする方法の紹介 May 08, 2024 pm 01:20 PM

1. まず、カメラを開き、右上隅にある設定アイコンをクリックします。 2. 地理位置情報と自動透かしスイッチをオフにします。

See all articles