Javascript 纬度和经度值不准确,并且在使用ASP.NET C中的地理位置图的Firefox中存在浏览器问题#

Javascript 纬度和经度值不准确,并且在使用ASP.NET C中的地理位置图的Firefox中存在浏览器问题#,javascript,c#,asp.net,google-maps,firefox,Javascript,C#,Asp.net,Google Maps,Firefox,我将纬度和经度值插入到数据库表中,但有些浏览器给出了带小数的大值,有些浏览器给出了较小的值。而且一些Firefox版本的地理地图不会发布,一些好友告诉我们添加{timeout:5000},如果浏览器不支持,就会发出警报。但是没有在我的Java脚本函数中添加该值 Latitude Longitude 1. 17.442816099999998 78.4800497 // this values are co

我将纬度和经度值插入到数据库表中,但有些浏览器给出了带小数的大值,有些浏览器给出了较小的值。而且一些Firefox版本的地理地图不会发布,一些好友告诉我们添加{timeout:5000},如果浏览器不支持,就会发出警报。但是没有在我的Java脚本函数中添加该值

     Latitude                     Longitude 

 1. 17.442816099999998          78.4800497          // this values are coming from firefox

 2.  17.4428978                 78.4799792         // this values are coming from google crome
上面的Firefox值是正确的,这是我的确切位置。我需要的纬度值应该在小数点后满15位,应该像谷歌浏览器中的数字1一样

下面是我的javascript代码:

  <script type="text/javascript">


if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(success );
}
else 
{
    alert("Geo Location is not supported on your current browser!");
}
function success(position) {
    var lat = position.coords.latitude;
    var long = position.coords.longitude;
    var city = position.coords.locality;
    var myLatlng = new google.maps.LatLng(lat, long);
    var myOptions = {
        center: myLatlng,
        zoom: 12,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    var marker = new google.maps.Marker({
        position: myLatlng,
        title: "lat: " + lat + " long: " + long
    });

    marker.setMap(map);
    var infowindow = new google.maps.InfoWindow({ content: "<b>User Address</b><br/> Latitude:" + lat + "<br /> Longitude:" + long + "" });

    document.getElementById("<%= latt.ClientID %>").value = position.coords.latitude;
    document.getElementById("<%= lng.ClientID %>").value = position.coords.longitude;

    var div = document.getElementById('map_canvas');
    div.style.visibility = 'hidden';

    infowindow.open(map, marker);
}

if(导航器.地理位置){
navigator.geolocation.getCurrentPosition(成功);
}
其他的
{
警报(“当前浏览器不支持地理位置!”);
}
功能成功(职位){
var lat=位置坐标纬度;
var long=位置坐标经度;
var city=position.coords.locality;
var mylatng=new google.maps.LatLng(lat,long);
变量myOptions={
中心:myLatlng,
缩放:12,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
var marker=new google.maps.marker({
职位:myLatlng,
标题:“lat:+lat+”长:“+long”
});
marker.setMap(map);
var infowindow=new google.maps.infowindow({content:“用户地址
纬度:“+lat+”
经度:“+long+”}); document.getElementById(“”).value=position.coords.latitude; document.getElementById(“”).value=position.coords.longitude; var div=document.getElementById('map_canvas'); div.style.visibility='hidden'; 信息窗口。打开(地图、标记); }

地理定位并非100%准确。该浏览器基本上只使用IP地址、附近的wifi塔以及它能找到的任何东西来尝试和定位用户。如果浏览器供应商有一个糟糕的数据库,就像微软一样,那么它的准确度就不那么高,或者如果你生活在丛林中,那么它的准确度也就不那么高,这并不是说浏览器神奇地知道你在哪里?我认为它支持默认的浏览器。而且地理位置并不是100%准确。所以我必须用什么来插入人的当前纬度和经度或位置区域名称@adeneoI托管在公共IP上,但crome提供的纬度值较少,firefox提供的纬度值较大@Hoanghieus通过IP地址找到的任何概念都将给出准确的结果@阿迪内奥