MIS2000Lab.的「HTML5 認證考試, 從零開始」#19 --- HTML5 Geolocation API ( 地理位置API )

摘要:MIS2000Lab.的「HTML5 認證考試, 從零開始」#19 --- HTML5 Geolocation API ( 地理位置API )




 

 

上一篇文章:MIS2000Lab.的「HTML5 認證考試,從零開始」#17 / #18 -- HTML5 File API

本文內容,將會在2014年底,碁峰出版社推出的HTML5新書裡面

HTML5、CSS、JavaScript 網頁程式設計與 MCSD 70-480 認證教材
 
9789863475750

HTML5、CSS、JavaScript 網頁程式設計與 MCSD 70-480 認證教材

MIS2000 Lab. 周棟祥/吳進魯

  • 出版商:碁峰
  • 出版日期:2015-04-09
  • 台幣定價:
  • $480
  • 售價:7.9 折 $379
  • 語言:繁體中文
  • ISBN:9863475750
  • ISBN-13:9789863475750

 

 

 

 

**********************************************************************************************************************

我要買書:

PChome  http://24h.pchome.com.tw/books/prod/DJAV0S-A90060ASI

博客來  http://www.books.com.tw/products/0010671214

天瓏書局  https://www.tenlong.com.tw/items/9863475750?item_id=1003110

 

不好意思,因為內容將會出書,所以目前公開的東西都經過大量簡化

日後出書的話,針對每一個方法、屬性都會仔細解說
 
 
 
前兩篇文章包含本文,都是介紹HTML5 API
 
今天終於分享到 -- HTML5 Geolocation API(地理位置API)
 
對於行動周邊(平板、智慧手機)來說,位置感知(Location Awareness)是很重要的特色。
 
HTML5 Geolocation API甚至可以得知行動周邊的經緯度(longitude、latitude)、高度(altitude)等等資訊。
 
應用層面如下:
 
 
讀取目前位置,導引到下一個位置(目的地)。
推估行動距離(距離目的地還有多遠?大概需要多少時間?)。
 
 
==== 接收(Request)地理位置的資訊 ====
 
下面的範例使用高精準度的資訊(enableHighAccuracy: true)
 
而且定義五秒內(500毫秒)必須有回應,不然就逾時(time out)。
 
navigator.geolocation.getCurrentPosition(myPositionCallbackFunction,  
myPositionErrorCallbackFunction,  
{enableHighAccuracy: true,  timeout: 5000} );  

 

==== 處理(Process)地理位置的資訊 ====
 
上一小節提到的兩個方法,.getCurrentPosition()方法與 .watchPosition()方法。
 
Call-back功能都有一個coords屬性,其中包含下面三者的座標資訊(coordinate information):
 
latitude。緯度,單位:度(degree)。
longitude。經度,單位:度。
Accuracy。精準度,單位:公尺(meter)。
 
 
這個範例源自w3school網站 -- http://www.w3schools.com/html/html5_geolocation.asp
 

 

<p id="demo">Click the button to get your coordinates:</p>  
  
<button onclick="getLocation()">Try It</button>  
  
<script>  
var x = document.getElementById("demo");  
  
function getLocation() {  
    if (navigator.geolocation) {  
        navigator.geolocation.getCurrentPosition(showPosition);  
    } else {   
        x.innerHTML = "抱歉!瀏覽器不支援Geolocation";  
    }  
}  
  
function showPosition(position) {  
    x.innerHTML="Latitude: " + position.coords.latitude +   
  "<br /> Longitude: " + position.coords.longitude;     
}  
</script>  

 

==== 處理地理位置的錯誤(例外狀況)====

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;  
    }  
 }  

 

最後要分享一個整合的範例
 
源自w3School的範例(Geolocation_API_GoogleMap.html),搭配Google Map偵測您的所在位置
 

 

本文內容,將會在2014年底,碁峰出版社推出的HTML5新書裡面

不好意思,因為內容將會出書,所以目前公開的東西都經過大量簡化
日後出書的話,針對每一個方法、屬性都會仔細解說
 
9789863475750

HTML5、CSS、JavaScript 網頁程式設計與 MCSD 70-480 認證教材

MIS2000 Lab. 周棟祥/吳進魯

  • 出版商:碁峰
  • 出版日期:2015-04-09
  • 台幣定價:
  • $480
  • 售價:7.9 折 $379
  • 語言:繁體中文
  • ISBN:9863475750
  • ISBN-13:9789863475750
 
 
 
 
 
不要走開,馬上回來
 
下一篇文章 

MIS2000Lab.的「HTML5 認證考試, 從零開始 」#20 / 21 --- Session Storage & Local Storage(永久存放區)

 

 

 

 

 

 

我將思想傳授他人, 他人之所得,亦無損於我之所有;

猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson

線上課程,遠距教學 (Web Form 49hr)  https://dotblogs.com.tw/mis2000lab/2016/02/01/aspnet_online_learning_distance_education_VS2015

線上課程,遠距教學 (ASP.NET MVC 75hr)  https://dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab

ASP.NET MVC線上課程 第一天 免費看 (5.5小時) 

寫信給我,不要私訊 --  mis2000lab (at) yahoo.com.台灣  或  school (at) mis2000lab.net


ASP.NET遠距教學、線上課程(Web Form + MVC)。 第一天課程, "完整" 試聽。 

................   facebook社團   https://www.facebook.com/mis2000lab   ......................

................  YouTube (ASP.NET) 線上教學影片  https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA/

 

Blog文章 "附的範例" 無法下載,請看 這裡 ...... https://dotblogs.com.tw/mis2000lab/2016/03/14/2008_2015_mis2000lab_sample_download

請看我們的「售後服務」範圍(嚴格認定)

......................................................................................................................................................

...................................................................................................................................................... 

[遠距教學、教學影片] ASP.NET (Web Form) 課程 上線了!MIS2000Lab.主講

事先錄製好的影片,並非上課時側錄!   觀看影片時,有如我「一對一」跟您面對面講課

 

ASP.NET MVC 5 線上教學

累積時數約 75小時...... 第一天(5.5小時)完整內容,"免費"讓您評估