आपको एक स्थिति ऑप्शन ऑब्जेक्ट की आवश्यकता है, जिसमें आप API के बाद उच्च सटीकता ध्वज सेट करते हैं।
मैं यहाँ से उद्धृत कर रहा हूँ: http://diveintohtml5.info/geolocation.html
getCurrentPosition() फ़ंक्शन एक वैकल्पिक तीसरा तर्क है, एक PositionOptions आपत्ति है। ऐसे तीन गुण हैं जिन्हें आप स्थिति ऑप्शन ऑब्जेक्ट में सेट कर सकते हैं। सभी गुण वैकल्पिक हैं। आप किसी भी या सभी या उनमें से कोई भी सेट कर सकते हैं।
POSITIONOPTIONS
Property Type Default Notes
--------------------------------------------------------------
enableHighAccuracy Boolean false true might be slower
timeout long (no default) in milliseconds
maximumAge long 0 in milliseconds
तो वस्तु, इसे इस तरह से काम करना चाहिए:
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position){
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
var accuracy = position.coords.accuracy;
var coords = new google.maps.LatLng(latitude, longitude);
var mapOptions = {
zoom: 15,
center: coords,
mapTypeControl: true,
navigationControlOptions: {
style: google.maps.NavigationControlStyle.SMALL
},
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var capa = document.getElementById("capa");
capa.innerHTML = "latitud: " + latitude + " longitud: " + " aquesta es la precisio en metres : " + accuracy;
map = new google.maps.Map(
document.getElementById("mapContainer"), mapOptions
);
var marker = new google.maps.Marker({
position: coords,
map: map,
title: "ok"
});
},function error(msg){alert('Please enable your GPS position future.');
}, {maximumAge:600000, timeout:5000, enableHighAccuracy: true});
}else {
alert("Geolocation API is not supported in your browser.");
}
देखा मैं getCurrentPosition कॉल करने के लिए निम्न 2 पैरामीटर कहा:
,function error(msg){alert('Please enable your GPS position future.');}
, {maximumAge:600000, timeout:5000, enableHighAccuracy: true});
भी देखें : Geolocation HTML5 enableHighAccuracy True , False or Best Option?
धन्यवाद !! हालांकि, मुझे 65 मीटर से कम सटीकता नहीं मिल सकती है :( –
@meework आपने इसे सही सेट करने के बजाय सक्षम हाईएक्चुरिटी झूठी सेट की है। – Foreever