Tunua ya Tabia ya HTML5
- Mipango ya Kuzungumza Tunua ya HTML5
- Mipango ya Kuzingatia Ukutafutaji wa HTML5
HTML5 Geolocation (kigeografia) inaunda nchi ya mtumiaji.
Jifunze kwa urahisi: Onyesha nchi yako kwenye mapya ya Google
Kufikia nchi ya mtumiaji
API ya HTML5 Geolocation inaunda nchi ya mtumiaji.
Tukio hili linaweza kusababisha kumwambia mtumiaji kwamba hauwezi kufikia nchi ya mtumiaji kama mtumiaji hauagadhi.
Mfano wa kusababisha kufikia nchi
Internet Explorer 9, Firefox, Chrome, Safari na Opera inasababisha kufikia nchi.
Maelezo:Kwa vifaa vya GPS kama iPhone, kigeografia inafikia kwa urahisi zaidi.
HTML5 - Kusababisha kufikia nchi
Tumia methodi ya getCurrentPosition() ili kufikia nchi ya mtumiaji.
Mfano huu ni mbinu wa kigeografia ya kuzingatia hasa ambao anafikia jii na eneo ya mtumiaji.
Mifano
<script> var x=document.getElementById("demo"); function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else{x.innerHTML="Geolocation haikubaliwa na kifungu hiki.";} } function showPosition(position) { x.innerHTML="Ukubwa wa Mkoa: " + position.coords.latitude + "<br />Ukubwa wa Mkoa: " + position.coords.longitude; } </script>
Mfano wa kusababisha:
- Tukio la kumtumia geografia inahusiana.
- Kama inahusiana, inafanya getCurrentPosition() methodi. Kama haingia, inaonyesha ujumbe kwa mtumiaji.
- Kama getCurrentPosition() inafanikia, inasababisha kubadilika kwa kifaa cha coordinates kwa funguli iliyotumika kama showPosition.
- Funguli ya showPosition() inafikia na inadhatisha jii na eneo
Mfano huo ni script wa kigeografia wa kuzingatia hasa bila usababishaji wa kosa.
Usababishaji na kusababisha kosa na kusababisha kumwambia mtumiaji.
Parameter ya methodi ya getCurrentPosition() ya pili ina umehusiano na kusababisha kosa. Iliwa kwamba kama mafanikio ya kufikia nchi ya mtumiaji hayafikii, kifaa kinachotumika kufanya kazi:
Mifano
function showError(error) { switch(error.code) { case error.PERMISSION_DENIED: x.innerHTML="Mtumiaji alianza kusababisha tukio wa kufikia nchi." break; case error.POSITION_UNAVAILABLE: x.innerHTML="Mfano wa jipya ni kina huzungumza." 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; } }
错误代码:
- Permission denied - 用户不允许地理定位
- Position unavailable - 无法获取当前位置
- Timeout - 操作超时
在地图中显示结果
如需在地图中显示结果,您需要访问可使用经纬度的地图服务,比如谷歌地图或百度地图:
Mifano
function showPosition(position) { var latlon=position.coords.latitude+","+position.coords.longitude; var img_url="http://maps.googleapis.com/maps/api/staticmap?center=" +latlon+"&zoom=14&size=400x300&sensor=false"; document.getElementById("mapholder").innerHTML=""; }
在上例中,我们使用返回的经纬度数据在谷歌地图中显示位置(使用静态图像)。
上面的链接向您演示如何使用脚本来显示带有标记、缩放和拖曳选项的交互式地图。
给定位置的信息
本页演示的是如何在地图上显示用户的位置。不过,地理定位对于给定位置的信息同样很有用处。
案例:
- 更新本地信息
- 显示用户周围的兴趣点
- 交互式车载导航系统 (GPS)
getCurrentPosition() 方法 - 返回数据
若成功,则 getCurrentPosition() 方法返回对象。始终会返回 latitude、longitude 以及 accuracy 属性。如果可用,则会返回其他下面的属性。
属性 | 描述 |
---|---|
coords.latitude | 十进制数的纬度 |
coords.longitude | 十进制数的经度 |
coords.accuracy | Tafuta na kidakezo cha eneo |
coords.altitude | Aliti ya kimo, kipimo cha mita kikidemokrasi cha bahari |
coords.altitudeAccuracy | Upeo wa juu wa eneo hiki |
coords.heading | Ukubwa, kuanzia kuzingatia kwa daraja |
coords.speed | Vifaa, kwa mita kwa sekunde |
timestamp | Tarehe na wa kuzungumza |
Mwongozo wa Geolocation - Mafungo ya kina zingine
watchPosition() - Inarudi upeo wa kwa sasa wa mtumishi, na inarudi upeo wa mtumishi hata wakati wa kushindwa (kama kwa kifungu cha GPS kwenye mafungo ya auto).
clearWatch() - Kuzima watchPosition()
Mifano inayotambulika hapa ni kwa sababu ya kumtaarifu watchPosition() kwa sababu inahitaji kifaa cha GPS kinachohitaji kufikiria (kama iPhone):
Mifano
<script> var x=document.getElementById("demo"); function getLocation() { if (navigator.geolocation) { navigator.geolocation.watchPosition(showPosition); } else{x.innerHTML="Geolocation haikubaliwa na kifungu hiki.";} } function showPosition(position) { x.innerHTML="Ukubwa wa Mkoa: " + position.coords.latitude + "<br />Ukubwa wa Mkoa: " + position.coords.longitude; } </script>
- Mipango ya Kuzungumza Tunua ya HTML5
- Mipango ya Kuzingatia Ukutafutaji wa HTML5