Geolokasi HTML5

HTML5 Geolocation API digunakan untuk mendapatkan lokasi geografi pengguna.

Nota: Memandangkan ciri ini mungkin melanggar privasi pengguna, maklumat lokasi pengguna tidak tersedia melainkan pengguna bersetuju Penyemak imbas akan muncul peringatan apabila menggunakan ciri ini.


1 Beberapa kaedah kedudukan geografi

Alamat IP, GPS, Wifi, GSM/CDMA

2. Proses perolehan lokasi geografi

1 perlu mendapatkan permohonan.

2. Aplikasi meminta lokasi geografi daripada penyemak imbas, dan penyemak imbas muncul pertanyaan yang meminta pengguna sama ada untuk berkongsi lokasi geografi.

3. Dengan mengandaikan pengguna membenarkannya, penyemak imbas akan menanyakan maklumat yang berkaitan daripada peranti.

4. Penyemak imbas menghantar maklumat yang berkaitan ke pelayan lokasi yang dipercayai, dan pelayan mengembalikan lokasi geografi tertentu.

3. Sokongan penyemak imbas

IE9.0+, FF3.5+, Safari5.0+, Chrome5.0+, Opera10.6 + Sokongan geolokasi.

Nota: Untuk peranti dengan GPS, seperti iPhone (IPhone3.0+, Android2.0+), geolokasi adalah lebih tepat.

4 Kaedah Geolokasi dalam HTML5

API Geolokasi wujud dalam objek navigator dan hanya mengandungi 3 kaedah:
< . >

Kesan sama ada geolokasi disokong

Jika disokong, jalankan kaedah getCurrentPosition(). Jika tidak disokong, mesej dipaparkan kepada pengguna.

Jika getCurrentPosition() berjalan dengan jayanya, objek koordinat dikembalikan kepada fungsi yang dinyatakan dalam parameter showPosition

Fungsi showPosition() memperoleh dan memaparkan longitud dan latitud

Mengendalikan ralat dan Penolakan

Parameter kedua kaedah getCurrentPosition() digunakan untuk mengendalikan ralat. Ia menentukan fungsi yang akan dijalankan apabila mendapatkan lokasi pengguna gagal:

fungsi showError(error)
{
switch(error.code)
request "
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML=. "Maklumat lokasi tidak tersedia. ralat kes. TIMEOUT:
x .innerHTML="Meminta lokasi pengguna tamat masa."
                                                                                                                                                         }
}




kaedah getCurrentPosition() - kembalikan data


Jika kedudukan berjaya diperolehi, kaedah getCurrentPosition() mengembalikan objek. Sifat latitud, longitud dan ketepatan sentiasa dikembalikan. Jika tersedia, sifat berikut yang lain dikembalikan.
Sifat                                                                                                                                     nombor sistem

koord.longitud Longitud perpuluhan koord.ketepatan Ketepatan kedudukan

koord. altitud Ketinggian, dalam meter di atas paras laut

coords.altitudeAccuracy Ketepatan kedudukan Ketepatan ketinggian coords.heading Arah, dalam darjah dari utara benar

coords.speed Kelajuan, dalam meter /saat


cap masa Tarikh/masa respons

Anda juga boleh mendapatkan lokasi geografi (hanya disokong oleh firefox)

p.alamat.negara negara

p.alamat.wilayah Wilayah

p.alamat.bandar Bandar

Meneruskan pembelajaran
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>基于浏览器的HTML5查找地理位置</title> <!-- 百度API --> <script src="http://api.map.baidu.com/api?v=1.2" type="text/javascript"></script> <script> function getLocation(){ var options={ enableHighAccuracy:true, maximumAge:1000 } if(navigator.geolocation){ //浏览器支持geolocation navigator.geolocation.getCurrentPosition(onSuccess,onError,options); }else{ //浏览器不支持geolocation } } //成功时 function onSuccess(position){ //返回用户位置 //经度 var longitude =position.coords.longitude; //纬度 var latitude = position.coords.latitude; //使用百度地图API //创建地图实例 var map =new BMap.Map("container"); //创建一个坐标 var point =new BMap.Point(longitude,latitude); //地图初始化,设置中心点坐标和地图级别 map.centerAndZoom(point,15); } //失败时 function onError(error){ switch(error.code){ case 1: alert("位置服务被拒绝"); break; case 2: alert("暂时获取不到位置信息"); break; case 3: alert("获取信息超时"); break; case 4: alert("未知错误"); break; } } window.onload=getLocation; </script> </head> <body> <!-- 结果会显示位置服务被拒绝 --> <div id="container" style="width:600px;height:600px"></div> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!