中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

突襲HTML5之Javascript API擴展2—地理信息服務及地理位置API學習
來源:易賢網 閱讀:1683 次 日期:2016-07-22 14:51:15
溫馨提示:易賢網小編為您整理了“突襲HTML5之Javascript API擴展2—地理信息服務及地理位置API學習”,方便廣大網友查閱!

在HTML5中,加入了新的地理位置API用來確定和分享地理位置。這一類服務就是企業利用某點(例如用戶所在的位置)坐標附近的區域提供服務的信息,比如常見的地圖相關服務,本文詳細介紹下,感興趣的朋友可以了解下,或許對你有所幫助

現在比較火的一類服務叫做基于位置的服務(location-based service, LBS),這一類服務就是企業利用某點(例如用戶所在的位置)坐標附近的區域提供服務的信息,比如常見的地圖相關服務。在HTML5中,加入了新的地理位置API用來確定和分享地理位置。

隱私申明

在與遠程Web服務器共享物理位置時,隱私是一個需要關注的問題。因此,地理位置API會要求用戶先提供權限,然后Web應用程序才能訪問位置信息。首次訪問請求地理位置數據的網頁時,瀏覽器將顯示一個通知欄,提示提供對用戶位置的訪問權限。按照瀏覽器的提示,選擇相關的授權即可。

如果用戶未授予權限,則不會向 Web 應用程序提供位置信息。調用相關API不會觸發成功回調。

檢查瀏覽器的支持情況

地理位置API在主流的瀏覽器的最新版中都支持了,但是為了兼容老的瀏覽器,還是要檢查一下。如果地理位置 API 不可用,則 window.navigator.geolocation 將為 null,如下所示:

代碼如下:

function show_islocationenabled()

{

var str = "No, geolocation is not supported.";

if (window.navigator.geolocation) {

str = "Yes, geolocation is supported.";

}

alert( str );

}

Geolocation API基于navigator這一全局對象的一個新屬性:navigator.geolocation,該對象提供了一些關于訪問者的瀏覽器和系統的有用信息。Geolocation的信息可以通過許多手段獲得:比如基站、web的數據庫或是GPS等。使用不同的方式獲取到的Geolocation信息精度也是不一樣的,通常情況下,通過GPS獲得的最為準確(移動平臺上使用GPS最多,PC平臺上基本都是靠網絡數據)。偶然情況下,在一些位置上,你有可能不能獲得明確的地理位置讀數或是一點數據都接收不到。

定位當前位置

使用navigator.geolocation的getCurrentPosition()方法獲取用戶的當前位置,這個方法只獲取一次位置的信息。當該方法被腳本調用時,方法以異步的方式來嘗試獲取宿主設備的當前位置。

代碼如下:

方法簽名:getCurrentPosition(geolocationSuccessCallback,[geolocationErrorCallback,geolocationOptions]);

  1. geolocationSuccessCallback:獲取當前位置成功后的回調(必需的)

  2. geolocationErrorCallback. 有錯誤發生時使用的回調(可選的)

  3. geolocationOptions. 地理位置選項(可選的)

處理位置信息

getCurrentPositon()方法獲得當前位置成功后會將位置信息保存到一個Position對象中,然后把這個對象作為參數來執行geolocationSuccessCallback這一回調。在這個回調函數中,你可以任意處置這個對象中包含的信息。

Position對象有兩個屬性:timestamp和coords。timestamp屬性表示地理位置數據的創建時間,coords屬性表示地理位置信息,又包含七個屬性:

代碼如下:

. coords.latitude:估計緯度

. coords.longitude:估計經度

. coords.altitude:估計高度

. coords.accuracy:所提供的以米為單位的經度和緯度估計的精確度

. coords.altitudeAccuracy:所提供的以米為單位的高度估計的精確度

. coords.heading: 宿主設備當前移動的角度方向,相對于正北方向順時針計算

. coords.speed:以米每秒為單位的設備的當前對地速度

一般的,這些屬性中有三項是保證有的:coords.latitude、coords.longitude和coords.accuracy,其余的返回null;這取決于設備的能力和其所采用的后端定位服務器。而且,heading和speed屬性可以基于用戶之前的位置計算出來。

處理錯誤

執行getCurrentPositon()方法時如果有錯誤發生的話,則該方法傳遞一個PositionError對象給geolocationErrorCallback回調。

設置地理位置選項

你可以設置geolocationOptions的三個屬性:

代碼如下:

enableHighAccuracy:如果設備支持高精度的話,這個選項表示是否啟用高精度。

timeout:查詢超時時間

maximumAge: 緩存的位置最大的時間數,在這一時間段內緩存可被使用。

看下面完整的例子:

代碼如下:

<!DOCTYPE html>

<html>

<body>

<p id="demo">Click the button to get your position:</p>

<button onclick="getLocation()">Try It</button>

<div id="mapholder"></div>

<script>

var x=document.getElementById("demo");

function getLocation() {

if (navigator.geolocation){

navigator.geolocation.getCurrentPosition(showPosition,showError);

}

else{

x.innerHTML="Geolocation is not supported by this browser.";

}

}

function showPosition(position) {

var latlon=position.coords.latitude+","+position.coords.longitude;

var img_url="http://maps.googleapis.com/maps/api/staticmap?center=" +

latlon + "&zoom=9&size=400x300&sensor=false";

document.getElementById("mapholder").innerHTML="<img src='"+img_url+"' />";

}

function showError(error) {

switch(error.code) {

case error.PERMISSION_DENIED:

x.innerHTML="User denied the request for Geolocation."

break;

case error.POSITION_UNAVAILABLE:

x.innerHTML="Location information is unavailable."

break;

case error.TIMEOUT:

x.innerHTML="The request to get user location timed out."

break;

case error.UNKNOWN_ERROR:

x.innerHTML="An unknown error occurred."

break;

}

}

</script>

</body>

</html>

這個例子獲取到當前設備所在的地理位置并顯示到Google地圖中。當然你可以使用百度地圖API中的靜態圖版來改造這個例子。百度地圖API參看后面的實用參考中的鏈接。

開啟/取消持續定位

使用navigator.geolocation的watchPosition()方法可以定期輪詢用戶的位置,查看用戶的位置是否發生改變。這個方法有三個參數:這三個參數和getCurrentPosition()方法一樣,一個成功后的回調,一個失敗后的回調,和一個獲取位置信息的選項;這個方法有一個返回值watchID,用于取消持續定位。

使用navigator.geolocation的clearWatch()方法可以終止正在進行的watchPosition(),該方法只帶一個參數watchID。

看下面的例子:

代碼如下:

<!DOCTYPE html>

<html>

<head>

<title>Geolocation API Example: Listening for Location Updates</title>

<meta http-equiv="X-UA-Compatible" content="IE=9" />

<script type="text/javascript">

function setText(val, e) {

document.getElementById(e).value = val;

}

var nav = null;

var watchID;

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 not supported");

}

}

else {

alert("Navigator not found");

}

}

function clearWatch(watchID) {

window.navigator.geolocation.clearWatch(watchID);

}

function successCallback(position)

{

setText(position.coords.latitude, "latitude");

setText(position.coords.longitude, "longitude");

}

</script>

</head>

<body>

<label for="latitude">Latitude: </label><input id="latitude" />

<label for="longitude">Longitude: </label><input id="longitude" />

<input type="button" value="Watch Latitude and Longitude" onclick="listenForPositionUpdates()" />

<input type="button" value="Clear watch" onclick="clearWatch()" />

</body>

</html>

更多信息請查看網頁制作
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
久久久久亚洲综合| 亚洲高清在线视频| 久久在线观看视频| 国产日韩久久| 久久综合成人精品亚洲另类欧美| 国产精品99一区二区| 99香蕉国产精品偷在线观看| 欧美精品在线网站| 亚洲欧美另类中文字幕| 国产一区二区三区日韩| 久久久噜噜噜久久中文字免| 国产自产女人91一区在线观看| 久久久国产视频91| 日韩视频精品在线| 国产伦精品一区二区三区高清版 | 久久精品一区蜜桃臀影院 | 香蕉久久a毛片| 1024成人网色www| 国产精品扒开腿爽爽爽视频 | 欧美亚洲成人精品| 美乳少妇欧美精品| 欧美亚洲一区二区在线观看| 亚洲另类一区二区| 在线观看亚洲视频啊啊啊啊| 国产精品一区二区欧美| 欧美日韩国产成人在线| 蜜桃av综合| 久久久久国产精品一区三寸| 亚洲一区不卡| 亚洲精品乱码久久久久久蜜桃91| 国产一区二区三区成人欧美日韩在线观看 | 欧美日韩国产一级| 欧美在线网站| 亚洲午夜在线观看| 91久久综合| 国产精品久久久久久五月尺| 欧美刺激性大交免费视频| 久久精品九九| 99精品视频一区| 黄色一区二区三区四区| 国产精品久久网站| 欧美日韩亚洲在线| 欧美精品国产精品| 欧美国内亚洲| 麻豆国产精品va在线观看不卡| 久久9热精品视频| 欧美在线观看视频在线| 99视频精品在线| 亚洲日本中文| 亚洲精品免费看| 亚洲欧洲在线免费| 亚洲精品国产精品乱码不99按摩| 在线看片一区| 亚洲精品美女免费| 亚洲精品日韩一| 亚洲日韩欧美视频一区| 亚洲三级电影全部在线观看高清| 黄色在线一区| 在线观看亚洲精品视频| 亚洲成人影音| 暖暖成人免费视频| 欧美日韩国产成人高清视频| 免费观看成人鲁鲁鲁鲁鲁视频| 久久综合精品一区| 久久综合久久久久88| 久久精品青青大伊人av| 午夜精品成人在线| 欧美专区在线观看| 久久理论片午夜琪琪电影网| 麻豆国产va免费精品高清在线| 免费日韩av片| 欧美色网一区二区| 国产精品自拍三区| 在线精品高清中文字幕| 91久久精品日日躁夜夜躁欧美| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲精一区二区三区| 亚洲一级黄色av| 久久成人精品无人区| 蜜桃av噜噜一区| 欧美三日本三级少妇三2023| 国产精品网站在线观看| 黄色成人在线| 一本大道久久a久久综合婷婷| 艳妇臀荡乳欲伦亚洲一区| 午夜精品久久久久久久99樱桃 | 在线亚洲欧美视频| 久久成人精品| 免费不卡亚洲欧美| 国产精品女人网站| 亚洲精品社区| 久久se精品一区二区| 欧美激情无毛| 国产精品一区二区在线观看网站| 尤物九九久久国产精品的特点| 亚洲免费观看高清完整版在线观看| 午夜久久黄色| 欧美日韩视频第一区| 国内在线观看一区二区三区| 中文精品在线| 免费在线观看一区二区| 国产精品午夜春色av| 伊人婷婷欧美激情| 午夜精品久久久久影视| 欧美大胆成人| 狠狠色综合色综合网络| 亚洲图片在线观看| 欧美成人综合网站| 黄色成人av网站| 久久国产精品色婷婷| 国产精品第13页| 日韩天堂在线视频| 欧美高清视频| 亚洲国产一区二区a毛片| 久久精品一区| 国产综合精品一区| 欧美一区永久视频免费观看| 国产精品裸体一区二区三区| 亚洲国产婷婷香蕉久久久久久| 久久riav二区三区| 国产欧美日韩一区二区三区在线观看 | 欧美高清在线视频观看不卡| 国产亚洲欧美一区二区| 午夜精品福利在线观看| 欧美日韩情趣电影| 亚洲精品少妇网址| 欧美激情精品久久久六区热门| 精品1区2区3区4区| 久久免费的精品国产v∧| 欧美日韩99| 亚洲卡通欧美制服中文| 欧美久久久久久久| 亚洲美女av在线播放| 欧美日韩成人综合天天影院| 亚洲精品国产精品乱码不99 | 蜜桃精品久久久久久久免费影院| 狠狠色丁香久久综合频道 | 午夜久久久久久| 国产一级揄自揄精品视频| 亚洲一区一卡| 国产精品mm| 午夜精品成人在线| 国产日韩欧美二区| 久久婷婷丁香| 亚洲美女在线看| 国产精品久久9| 久久av二区| 亚洲国产成人精品女人久久久| 欧美黑人在线播放| 亚洲午夜精品久久| 国产精品一区在线观看| 久久久久久一区二区| 亚洲国产精品美女| 欧美日韩一区二区在线| 午夜视频一区在线观看| 精品av久久707| 欧美精品一区二区三| 中国女人久久久| 国产一级揄自揄精品视频| 久久阴道视频| 亚洲一二三级电影| 一区二区三区在线视频播放| 欧美二区视频| 欧美一级视频免费在线观看| 亚洲高清久久| 国产精品视频一区二区三区| 美女主播精品视频一二三四| 亚洲图片欧洲图片av| 在线观看中文字幕不卡| 国产精品久久久久秋霞鲁丝| 狼狼综合久久久久综合网 | 欧美日本高清| 午夜亚洲精品| 亚洲乱码一区二区| 一区二区在线看| 国产嫩草影院久久久久| 欧美美女操人视频| 老司机aⅴ在线精品导航| 亚洲一区二区高清视频| 亚洲国产中文字幕在线观看| 国产精品自拍三区| 欧美日韩一区二区高清| 麻豆av一区二区三区久久| 午夜亚洲性色视频| 99精品热6080yy久久| 在线日韩av片| 国产欧美一区二区三区国产幕精品| 欧美精品尤物在线| 老司机精品久久| 欧美一区中文字幕| 亚洲午夜高清视频| 99精品视频网| 亚洲老板91色精品久久| 亚洲高清av在线| 国语自产精品视频在线看抢先版结局| 国产精品每日更新| 国产精品免费一区豆花| 欧美视频一区二| 欧美日韩视频在线| 欧美日韩国产精品成人|