選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP 如何 W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

HTML 教程

HTML 首頁 HTML 簡介 HTML 編輯器 HTML 基礎 HTML 元素 HTML 屬性 HTML 標題 HTML 段落 HTML 樣式 HTML 格式化 HTML 引用 HTML 註釋 HTML 顏色 HTML CSS HTML 連結 HTML 影像 HTML 收藏夾圖示 HTML 頁面標題 HTML 表格 HTML 列表 HTML 塊級和行內元素 HTML Div HTML 類 HTML Id HTML Iframes HTML JavaScript HTML 檔案路徑 HTML Head HTML 佈局 HTML 響應式 HTML 計算機程式碼 HTML 語義 HTML 樣式指南 HTML 實體 HTML 符號 HTML 表情符號 HTML 字元集 HTML URL 編碼 HTML vs. XHTML

HTML 表單

HTML 表單 HTML 表單屬性 HTML 表單元素 HTML 輸入型別 HTML 輸入屬性 輸入表單屬性

HTML 圖形

HTML Canvas HTML SVG

HTML 媒體

HTML 媒體 HTML 影片 HTML 音訊 HTML 外掛 HTML YouTube

HTML API

HTML 地理定位 HTML 拖放 HTML Web 儲存 HTML Web Workers HTML SSE

HTML 示例

HTML 示例 HTML 編輯器 HTML 測驗 HTML 練習 HTML 網站 HTML 面試準備 HTML 新兵訓練營 HTML 證書 HTML 摘要 HTML 無障礙性

HTML 參考

HTML 標籤列表 HTML 屬性 HTML 全域性屬性 HTML 瀏覽器支援 HTML 事件 HTML 顏色 HTML Canvas HTML 音訊/影片 HTML 文件型別 HTML 字元集 HTML URL 編碼 HTML 語言程式碼 HTTP 訊息 HTTP 方法 PX 到 EM 轉換器 鍵盤快捷鍵

HTML 地理定位 API


HTML 地理定位 API 用於定位使用者的位置。


定位使用者的位置

HTML 地理定位 API 用於獲取使用者的地理位置。

由於這可能會洩露隱私,除非使用者批准,否則無法獲取位置資訊。

注意:帶有 GPS 的裝置(如智慧手機)的地理定位最準確。


瀏覽器支援

表中的數字表示完全支援地理定位的第一個瀏覽器版本。

API
地理定位 5.0 - 49.0 (http)
50.0 (https)
9.0 3.5 5.0 16.0

注意:自 Chrome 50 起,地理定位 API 僅在 HTTPS 等安全上下文上執行。如果您的站點託管在非安全源(如 HTTP)上,則獲取使用者位置的請求將不再起作用。


使用 HTML 地理定位

getCurrentPosition() 方法用於返回使用者的位置。

下面的示例返回使用者位置的緯度和經度

示例

<script>
const x = document.getElementById("demo");

function getLocation() {
  if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(showPosition);
  } else {
    x.innerHTML = "此瀏覽器不支援地理定位。";
  }
}

function showPosition(position) {
  x.innerHTML = "緯度: " + position.coords.latitude +
  "
經度: " + position.coords.longitude;
}
</script>
自己動手試一試 »

示例說明

  • 檢查是否支援地理定位
  • 如果支援,執行 getCurrentPosition() 方法。否則,向用戶顯示一條訊息
  • 如果 getCurrentPosition() 方法成功,它會向引數中指定的函式 (showPosition) 返回一個 coordinates 物件
  • showPosition() 函式輸出緯度和經度

上面的示例是一個非常基本的地理定位指令碼,沒有錯誤處理。



處理錯誤和拒絕

getCurrentPosition() 方法的第二個引數用於處理錯誤。它指定一個函式,在無法獲取使用者位置時執行

示例

function showError(error) {
  switch(error.code) {
    case error.PERMISSION_DENIED
      x.innerHTML = "使用者拒絕了地理定位請求。"
      break;
    case error.POSITION_UNAVAILABLE
      x.innerHTML = "位置資訊不可用。"
      break;
    case error.TIMEOUT
      x.innerHTML = "獲取使用者位置的請求超時。"
      break;
    case error.UNKNOWN_ERROR
      x.innerHTML = "發生未知錯誤。"
      break;
  }
}
自己動手試一試 »

特定位置資訊

本頁演示瞭如何在地圖上顯示使用者的位置。

地理定位對於特定位置的資訊也非常有用,例如

  • 最新的本地資訊
  • 顯示使用者附近的興趣點
  • 逐嚮導航 (GPS)

getCurrentPosition() 方法 - 返回資料

getCurrentPosition() 方法在成功時返回一個物件。始終返回緯度、經度和精度屬性。如果可用,則返回其他屬性

屬性 返回
coords.latitude 緯度,十進位制數(始終返回)
coords.longitude 經度,十進位制數(始終返回)
coords.accuracy 位置精度(始終返回)
coords.altitude 海拔,以米為單位,高於平均海平面(如果可用,則返回)
coords.altitudeAccuracy 位置海拔精度(如果可用,則返回)
coords.heading 從正北方向順時針測量的航向,以度為單位(如果可用,則返回)
coords.speed 速度,以米/秒為單位(如果可用,則返回)
timestamp 響應的日期/時間(如果可用,則返回)

地理定位物件 - 其他有趣的方法

地理定位物件還有其他有趣的方法

  • watchPosition() - 返回使用者的當前位置,並在使用者移動時持續返回更新的位置(類似於汽車中的 GPS)。
  • clearWatch() - 停止 watchPosition() 方法。

下面的示例演示了 watchPosition() 方法。您需要一個精確的 GPS 裝置來測試此功能(如智慧手機)

示例

<script>
const x = document.getElementById("demo");

function getLocation() {
  if (navigator.geolocation) {
    navigator.geolocation.watchPosition(showPosition);
  } else {
    x.innerHTML = "此瀏覽器不支援地理定位。";
  }
}
function showPosition(position) {
  x.innerHTML = "緯度: " + position.coords.latitude +
  "
經度: " + position.coords.longitude;
}
</script>
自己動手試一試 »

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援