日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

最悲剧的HTML5 API : Position地理位置

發布時間:2025/3/15 HTML 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最悲剧的HTML5 API : Position地理位置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Position API接口

注意:由于geolocation的位置信息來源包括GPS,IP地址,wifi,藍牙的MAC地址GSM/CDMA 卡 ID 等。移動設備優先使用GPS獲取位置,但是對于wifi和IP定位,瀏覽器本身不能直接解析,它只能手機wifi和ip的信息,然后通過請求位置信息服務接口來獲取,然后主流瀏覽器都是使用Google提供的地理位置查詢服務。通過抓包我們可以知道瀏覽器會請求www.googleapis.com來獲取位置信息,那么問題來了,谷歌撤出中國以后,很多Google提供的服務我們無法使用,其中就包括了地理位置查詢服務,悲劇!

不過我們還是有必要來學習一下這個最受開發者青睞的API。

方法1:getCurrentPosition() 獲取用戶當前的位置信息,有三個參數,1.成功后的回調函數,2.失敗后的回調函數,3,設置參數的對象。

方法2:watchCurrentPostion() 獲取用戶的位置信息,并繼續返回用戶移動時的更新位置,函數會返回一個 ID,唯一地標記該位置監視器。您可以將這個 ID 傳給 clearWatch() 函數來停止監視用戶位置。

方法3:clearWatch(id) 取消watchCurrentPostion,參數為watchID。

getCurrentPosition()使用案例

if(navigator.geolocation){

//可用

//設置配置參數

getLocationOptions = {

// 指示瀏覽器獲取高精度的位置,默認為false

enbaleHighAcuracy:true,

// 指定獲取地理位置的超時時間,默認不限時,單位為毫秒

timeout:5000,

// 最長有效期,在重復獲取地理位置時,此參數指定多久再次獲取位置。

maximumAge:300

};

navigator.geolocation.getCurrentPosition(getLocationSuccess,getLocationError,getLocationOptions);

}

else{

//不可用

alert('你的瀏覽器不支持geolocation API的使用');

}

//成功后返回對象,包含位置信息

function getLocationSuccess(position){

console.log('緯度:'+position.coords.latitude);

console.log('經度:'+position.coords.longitude);

console.log('位置精度:'+position.coords.accuracy);

console.log('海拔:'+position.coords.altitude);

console.log('海拔精度:'+position.coords.altitudeAccuracy);

console.log('方向(正北開始以度計):'+position.coords.heading);

console.log('速度,以米/每秒計'+position.coords.speed);

console.log('響應的日期/時間'+position.timestamp);

}

//失敗后返回對象,包含失敗信息

function getLocationError(error){

switch (error.code){

case error.PERMISSION_DENIED : alert('用戶拒絕瀏覽器獲取位置信息');break;

case error.TIMEOUT : alert('請求超時!'); break;

case error.POSITION_UNAVAILABLE : alert('無法檢測到你的位置'); break;

}

}

watchCurrentPostion()使用案例

var watchID = navigator.geolocation.watchPosition(function(position) { /*.....*/});

clearWatch(id)使用案例

navigator.geolocation.clearWatch(watchID);

總結

以上是生活随笔為你收集整理的最悲剧的HTML5 API : Position地理位置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。