Javascript HTML5地理定位问题
我正在为HTML5地理定位编写一个Java脚本,但它似乎不起作用,当我试图在另一个范围内输出内容时,它说未定义。下面是代码Javascript HTML5地理定位问题,javascript,html,Javascript,Html,我正在为HTML5地理定位编写一个Java脚本,但它似乎不起作用,当我试图在另一个范围内输出内容时,它说未定义。下面是代码 <script> var lat; var lng; function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else{} } function showP
<script>
var lat;
var lng;
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{}
}
function showPosition(position)
{
lat = position.coords.latitude;
lng = position.coords.longitude;
document.write(lat); // Doesnt output anything
}
</script>
<script type="text/javascript">
document.write(lat); // It says undefined
$(document).ready(function()
{
//some scripts here
}
</script>
var lat;
乏液化天然气;
函数getLocation()
{
if(导航器.地理位置)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{}
}
功能显示位置(位置)
{
纬度=位置坐标纬度;
lng=位置坐标经度;
document.write(lat);//不输出任何内容
}
文件。写入(lat);//它说的是未定义的
$(文档).ready(函数()
{
//这里有一些脚本
}
只有当html页面托管在web服务器上而不是本地主机上时,才会调用成功回调函数。您是在本地测试还是在web服务器上测试?显然,Chrome只允许您从具有SSL、HTTPS或其他加密方法的集群/安全化服务器跟踪您的位置。请检查@Nielslnc,问题不在hos上但取决于java脚本的异步性质。document.write()为null的原因是,document.write()在地理位置之前执行。我通过在showPosition(position)中执行函数成功地使程序工作功能正确!您修复了它,这对您很好!它与我尝试在localhost中测试时遇到的错误症状相同,因此我想我会与您分享。这不是脚本错误,还有其他问题,如本地测试,或者您没有授予浏览器权限