導航:首頁 > 地理科目 > 在h5中如何實現地理定位功能

在h5中如何實現地理定位功能

發布時間:2022-05-19 14:49:22

『壹』 html5的地理定位功能getCurrentPosition還能用嗎

能用,可以實現的,HTML5可以使用手機的GPS信息,利用網路等地圖的開放API就可以了。
HTML5中可以通過IP,WIFI信息,GPS,來實現地理定位,當然相關精度也是有所不同,所以如果要精確導航就得使用GPS信息。
下面是一段HTML5結合網路地圖API來獲取位置的代碼:

<div id="allmap"></div>當前定位地址:<a id="-gps"></a><span></span></div>
<script>
var map = new BMap.Map("allmap");
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
map.panTo(r.point);
//alert('您的位置:'+r.point.lng+','+r.point.lat);
var pt = r.point;
var geoc = new BMap.Geocoder();
geoc.getLocation(pt, function(rs){
var addComp = rs.addressComponents;
//alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
$("#-gps").text(addComp.district+addComp.street+addComp.streetNumber);
});
}
else {
alert('failed'+this.getStatus());
}
},{enableHighAccuracy: true})
</script>

『貳』 html5+怎麼獲取當前地理位置

定位功能(Geolocation)是HTML5的新特性,因此只有在支持HTML5的現代瀏覽器上運行,特別是手持設備如iphone,地理定位更加精確。首先我們要檢測用戶設備瀏覽器是否支持地理定位,如果支持則獲取地理信息。注意這個特性可能侵犯用戶的隱私,除非用戶同意,否則用戶位置信息是不可用的,所以我們在訪問該應用時會提示是否允許地理定位,我們當然選擇允許即可。

function getLocation(){
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(showPosition,showError);
}else{
alert("瀏覽器不支持地理定位。");
}
}

上面的代碼可以知道,如果用戶設備支持地理定位,則運行 getCurrentPosition() 如果getCurrentPosition()運行成功,則向參數showPosition中規定的函數返回一個coordinates對象,getCurrentPosition() 方法的第二個參數showError用於處理錯誤,它規定當獲取用戶位置失敗時運行的函數。
我們先來看一下函數showError(),它規定獲取用戶地理位置失敗時的一些錯誤代碼處理方式:

function showError(error){
switch(error.code) {
case error.PERMISSION_DENIED:
alert("定位失敗,用戶拒絕請求地理定位");
break;
case error.POSITION_UNAVAILABLE:
alert("定位失敗,位置信息是不可用");
break;
case error.TIMEOUT:
alert("定位失敗,請求獲取用戶位置超時");
break;
case error.UNKNOWN_ERROR:
alert("定位失敗,定位系統失效");
break;
}
}

我們再來看函數showPosition(),調用coords的latitude和longitude即可獲取到用戶的緯度和經度。

function showPosition(position){
var lat = position.coords.latitude; //緯度
var lag = position.coords.longitude; //經度
alert('緯度:'+lat+',經度:'+lag);
}

利用網路地圖和谷歌地圖介面獲取用戶地址

上面我們了解了HTML5的Geolocation可以獲取用戶的經緯度,那麼我們要做的是需要把抽象的經緯度轉成可讀的有意義的真正的用戶地理位置信息。幸運的是網路地圖和谷歌地圖等提供了這方面的介面,我們只需要將HTML5獲取到的經緯度信息傳給地圖介面,則會返回用戶所在的地理位置,包括省市區信息,甚至有街道、門牌號等詳細的地理位置信息。
我們首先在頁面定義要展示地理位置的div,分別定義id#_geo和id#google_geo。我們只需修改關鍵函數showPosition()。先來看網路地圖介面交互,我們將經緯度信息通過Ajax方式發送給網路地圖介面,介面會返回相應的省市區街道信息。網路地圖介面返回的是一串JSON數據,我們可以根據需求將需要的信息展示給div#_geo。注意這里用到了jQuery庫,需要先載入jQuery庫文件。

function showPosition(position){
var latlon = position.coords.latitude+','+position.coords.longitude;

//
var url = "<a href="http://api.map..com/geocoder/v2/?ak=&callback=renderReverse&location="+latlon+"&output=json&pois=0">http://api.map..com/geocoder/v2/?ak=&callback=renderReverse&location="+latlon+"&output=json&pois=0</a>";
$.ajax({
type: "GET",
dataType: "jsonp",
url: url,
beforeSend: function(){
$("#_geo").html('正在定位...');
},
success: function (json) {
if(json.status==0){
$("#_geo").html(json.result.formatted_address);
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#_geo").html(latlon+"地址位置獲取失敗");
}
});
});

再來看谷歌地圖介面交互。同樣我們將經緯度信息通過Ajax方式發送給谷歌地圖介面,介面會返回相應的省市區街道詳細信息。谷歌地圖介面返回的也是一串JSON數據,這些JSON數據比網路地圖介面返回的要更詳細,我們可以根據需求將需要的信息展示給div#google_geo。

function showPosition(position){
var latlon = position.coords.latitude+','+position.coords.longitude;

//google
var url = 'http://maps.google.cn/maps/api/geocode/json?latlng='+latlon+'&language=CN';
$.ajax({
type: "GET",
url: url,
beforeSend: function(){
$("#google_geo").html('正在定位...');
},
success: function (json) {
if(json.status=='OK'){
var results = json.results;
$.each(results,function(index,array){
if(index==0){
$("#google_geo").html(array['formatted_address']);
}
});
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#google_geo").html(latlon+"地址位置獲取失敗");
}
});
}

『叄』 html5地理定位基於什麼原理

HTML5地理定位的實現原理:
1. 實現基於瀏覽器(無需後端支持)獲取用戶的地理位置技術
2. 精確定位用戶的地理位置( 精度最高達10m之內,依賴設備 )
3. 持續追蹤用戶的地理位置
4. 與 Google Map、或者 Bai Map 交互呈現位置信息。

『肆』 html5 geolocation怎麼使用

定位用戶的位置
HTML5 Geolocation API 用於獲得用戶的地理位置。
鑒於該特性可能侵犯用戶的隱私,除非用戶同意,否則用戶位置信息是不可用的。
瀏覽器支持
Internet Explorer 9、Firefox、Chrome、Safari 以及 Opera 支持地理定位。
注釋:對於擁有 GPS 的設備,比如 iPhone,地理定位更加精確。
HTML5 - 使用地理定位
請使用 getCurrentPosition() 方法來獲得用戶的位置。

二、
HTML5 Geolocation API是新增的地理位置應用程序介面。它提供了一個可以准確感知瀏覽器用戶當前地理位置的方法。如果瀏覽器支持,且設備具有定位功能,就能夠直接使用這個API來獲取當前位置信息。
window.navigator.geolocation對象存在3個方法:
1. getCurrentPosition 獲取當前地理位置
2. watchPosition 監視位置信息
3. clearWatch 停止獲取位置信息

『伍』 HTML5怎樣獲取地理位置

HTML5怎樣獲取地理信息,如html5怎樣獲取ip地址,怎樣實現gps導航定位,wifi基站的mac地址服務等,這些在HTML5中已經都已經有API實現了,用戶可以輕松使用html5技術進行操作,下面詳細為大家介紹HTML5操作地理信息。

1、HTML5中ip地址
其實在中國IP地址還是比較准確,書上說不準確,很多時候獲取的是ISP機房的位置,但是獲取非常方便,沒有什麼限制。但是實際上我覺得在中國,ip地址還是比較准確的,基本上上能精確到小區或大樓的標准。

2、HTML5中GPS定位操作

GPS定位非常准確,但是需要在戶外,且需要很長時間搜索衛星。但前提就是硬體設備要支持GPS。最主要的很多設備比如筆記本電腦基本都是不帶GPS的,新的智能手機purse hanger倒是都有。

3、WiFi基站的mac地址。

(猜測是連接位置已知的公共WiFi的時候,通過Mac地址識別WiFi接入點,從而定位)

這種定位的精度還是很不錯的,而且還可以在室內定位。不過由於這種位置公開的wifi比較少,此種方法的適用范圍比較少。

4、 GSM或CDMA基站

通過基站定位,精度隨基站密度變化,精度一般,還是只有手機能用。看來地理位置API還是手機上比較有實用性。

5、用戶指定位置

暈,這個就不是HTML5的范疇了。

地理位置獲取流程步驟:

1、用戶打開需要獲取地理位置的web應用。

2、應用向瀏覽器請求地理位置,瀏覽器彈出詢問窗口,詢問用戶是否共享地理位置。

3、假設用戶允許,瀏覽器從設別查詢相關信息。

4、瀏覽器將相關信息發送到一個信任的位置伺服器,伺服器返回具體的地理位置。

『陸』 如何在h5作品中添加地圖功能

你找一下地圖控制項,編輯一下就可以了。
一般H5製作平台都有地圖控制項,你還可以試一下逗應用之星地,不僅可以製作H5頁面,還能一鍵生成webapp。
你追問我一下,我把地址給你。

『柒』 html5 如何調用安卓手機獲取gps坐標

HTML5中可以通過IP,WIFI信息,GPS,來實現地理定位,當然相關精度也是有所不同,所以如果要精確導航就得使用GPS信息。
下面是一段HTML5結合網路地圖API來獲取位置的代碼:

<divid="allmap"></div>當前定位地址:<aid="-gps"></a><span></span></div>
<script>
varmap=newBMap.Map("allmap");
vargeolocation=newBMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus()==BMAP_STATUS_SUCCESS){
map.panTo(r.point);
//alert('您的位置:'+r.point.lng+','+r.point.lat);
varpt=r.point;
vargeoc=newBMap.Geocoder();
geoc.getLocation(pt,function(rs){
varaddComp=rs.addressComponents;
//alert(addComp.province+","+addComp.city+","+addComp.district+","+addComp.street+","+addComp.streetNumber);
$("#-gps").text(addComp.district+addComp.street+addComp.streetNumber);
});
}
else{
alert('failed'+this.getStatus());
}
},{enableHighAccuracy:true})
</script>

『捌』 html5提供的地理定位功能能實現精確導航嗎


『玖』 html5如何實現地理位置定位原理

Geolocation API,智能機等有GPS的通過GPS和網路節點獲取位置,電腦只通過網路節點獲取位置,所以電腦定位一般不太准

『拾』 h5頁面在微信中怎麼調取地圖定位功能

H5在微信中無法調取自動定位的,手動定位和一般的h5一樣使用。

閱讀全文

與在h5中如何實現地理定位功能相關的資料

熱點內容
word中化學式的數字怎麼打出來 瀏覽:747
乙酸乙酯化學式怎麼算 瀏覽:1411
沈陽初中的數學是什麼版本的 瀏覽:1364
華為手機家人共享如何查看地理位置 瀏覽:1054
一氧化碳還原氧化鋁化學方程式怎麼配平 瀏覽:894
數學c什麼意思是什麼意思是什麼 瀏覽:1423
中考初中地理如何補 瀏覽:1312
360瀏覽器歷史在哪裡下載迅雷下載 瀏覽:712
數學奧數卡怎麼辦 瀏覽:1402
如何回答地理是什麼 瀏覽:1037
win7如何刪除電腦文件瀏覽歷史 瀏覽:1063
大學物理實驗干什麼用的到 瀏覽:1494
二年級上冊數學框框怎麼填 瀏覽:1713
西安瑞禧生物科技有限公司怎麼樣 瀏覽:1008
武大的分析化學怎麼樣 瀏覽:1256
ige電化學發光偏高怎麼辦 瀏覽:1345
學而思初中英語和語文怎麼樣 瀏覽:1669
下列哪個水飛薊素化學結構 瀏覽:1431
化學理學哪些專業好 瀏覽:1493
數學中的棱的意思是什麼 瀏覽:1072