摘要:此項(xiàng)定義緩存的最長時(shí)限。瀏覽器返回位置信息的最大超時(shí),以毫秒為單位。后臺(tái)任務(wù)會(huì)獲取當(dāng)前位置將位置發(fā)送給成功回調(diào)函數(shù)設(shè)置定時(shí)器監(jiān)視位置。定時(shí)器每次觸發(fā)都會(huì)獲取一個(gè)新的位置,并且對(duì)位置進(jìn)行比較確認(rèn)是否存在重大區(qū)別??蛇x用于處理任何錯(cuò)誤的函數(shù)。
簡(jiǎn)單使用getCurrentPosition獲取當(dāng)前位置
Geolocation API的基本功能是查詢?yōu)g覽器當(dāng)前所處的位置。getCurrentPosition方法能夠通過JavaScript異步調(diào)用為你提供這樣的信息。已通常JavaScript的同步運(yùn)行或程序流程不同的是,這里的調(diào)用從本質(zhì)來說就是異步的。通過異步函數(shù)的調(diào)用,JavaScript在后臺(tái)運(yùn)行該調(diào)用,并在完成時(shí)返回給某個(gè)函數(shù)。異步調(diào)用的形式能使查詢不阻塞頁面其他部分的運(yùn)行。
getCurrentPosition方法獲取瀏覽器的當(dāng)前位置。它接受一個(gè)必須參數(shù)(一個(gè)成功時(shí)的回調(diào)函數(shù))和兩個(gè)可選參數(shù)(一個(gè)錯(cuò)誤回調(diào)函數(shù)和一個(gè)位置選項(xiàng)對(duì)象):
getCurrentPositon(successCallback [,errorCallback] [,positionOptions])
getCurrentPosition包括下列參數(shù)。
successCallback: 處理返回坐標(biāo)的回調(diào)
errorCallback: (可選) 處理任何錯(cuò)誤的函數(shù)
options: (可選) options對(duì)象用來處理如何獲取位置
因?yàn)?b>getCurrentPosition是異步的,所以它需要知道成功返回時(shí)運(yùn)行哪個(gè)函數(shù)并為潛在的錯(cuò)誤準(zhǔn)備處理函數(shù)。示例如下所示:
使用PositionOptions確定距離Geolocation 點(diǎn)擊這個(gè)按鈕,獲得您的坐標(biāo):
為了更好控制位置信息,你需要使用getCurrentPosition方法的第三個(gè)參數(shù)PositionOptions。
PositionOptions做為一個(gè)對(duì)象傳遞給getCurrentPosition方法,它允許你對(duì)該方法的行為進(jìn)行一定的控制。對(duì)于此應(yīng)用類型,該參數(shù)能夠有一定的幫助作用。例如,如果應(yīng)用為基于位置的餐廳移動(dòng)應(yīng)用,那么通常返回的位置精確范圍太大、無法滿足需求。getCurrentPosition的PositionOptions能夠設(shè)置三種選項(xiàng),如下所示:
enableHighAccuracy: 布爾值,為真時(shí)告訴瀏覽器希望得到設(shè)備能夠提供的最精確的wehi只。默認(rèn)不開啟。
maximunAge: 瀏覽器會(huì)緩存最近獲取的的位置以節(jié)約電量。此項(xiàng)定義緩存的最長時(shí)限。以毫秒為單位,默認(rèn)為0。
timeout: 瀏覽器返回位置信息的最大超時(shí),以毫秒為單位。默認(rèn)值為0。
使用watchPositon跟隨移動(dòng)中的位置watchPosition方法與getCurrentPositon雷同,接受同樣的參數(shù)。在調(diào)用watchPosition后,瀏覽器會(huì)創(chuàng)建一個(gè)后臺(tái)任務(wù)并返回一個(gè)引用ID用于監(jiān)視進(jìn)程。后臺(tái)任務(wù)會(huì)獲取當(dāng)前位置、將位置發(fā)送給成功回調(diào)函數(shù)、設(shè)置定時(shí)器監(jiān)視位置。定時(shí)器每次觸發(fā)都會(huì)獲取一個(gè)新的位置,并且對(duì)位置進(jìn)行比較確認(rèn)是否存在“重大”區(qū)別。如果新位置與上次位置差別很大,則會(huì)使用新位置信息調(diào)用成功函數(shù)。該進(jìn)程將一直運(yùn)行知道使用監(jiān)視ID調(diào)用clearWatch,或者窗口關(guān)閉。下面分別是wathcPosition和clearWatch方法的接口。
long watchPosition(successCallback [, errorCallback] [, positionOptions])
參數(shù)介紹如下:
successCallback: 瀏覽器確定新位置后,傳入位置對(duì)象并調(diào)用的函數(shù)。
errorCallback: (可選) 用于處理任何錯(cuò)誤的函數(shù)。
options: (可選) 處理如何獲取位置的選項(xiàng)對(duì)象。
void clearWatch(watchID)
參數(shù)介紹如下:
watchId : 需要終止的監(jiān)視進(jìn)程的長整形ID。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/49630.html
摘要:如果應(yīng)用程序不再需要接受有關(guān)用戶的持續(xù)位置更新,則只需調(diào)用函數(shù),如下所示表示一個(gè)唯一的監(jiān)視請(qǐng)求以便將來取消監(jiān)視。 GeolocationAPI學(xué)習(xí),我寫的挺枯燥的,直接跳到最后看示例。 5.1 位置信息 HTML5 Geolocation API的使用方法相當(dāng)簡(jiǎn)單。請(qǐng)求一個(gè)位置信息,如果用戶同意,瀏覽器就會(huì)返回位置信息,該位置信息是通過支持HTML5地理定位功能的底層設(shè)備(手機(jī)、筆記本...
摘要:是標(biāo)準(zhǔn)下的一個(gè)利用它可以獲取設(shè)備的當(dāng)前位置信息坐標(biāo),此具有三個(gè)方法和,其中最常用的是方法,剩下兩個(gè)方法需要搭配使用使用方法瀏覽器兼容性檢測(cè)該通過對(duì)象發(fā)布,只有在此對(duì)象存在的情況下,才可以使用它的地理定位服務(wù),檢測(cè)方法如下定位代碼寫在這里獲取 Geolocation是HTML5標(biāo)準(zhǔn)下的一個(gè)Web API,利用它可以獲取設(shè)備的當(dāng)前位置信息(坐標(biāo)),此API具有三個(gè)方法:getCurrent...
閱讀 485·2023-04-25 17:26
閱讀 1504·2021-08-05 09:58
閱讀 1970·2019-08-30 13:17
閱讀 953·2019-08-28 17:52
閱讀 1069·2019-08-26 18:27
閱讀 1424·2019-08-26 14:05
閱讀 3622·2019-08-26 14:05
閱讀 1597·2019-08-26 10:45