请问我如何在其函数之外获取“lat”和“lon”的值以在页面上的其他位置使用。
navigator.geolocation.getCurrentPosition(handle_geolocation_query,handle_errors);
function handle_errors(error)
{
switch(error.code)
{
case error.PERMISSION_DENIED: alert("user did not share geolocation data");
break;
case error.POSITION_UNAVAILABLE: alert("could not detect current position");
break;
case error.TIMEOUT: alert("retrieving position timed out");
break;
default: alert("unknown error");
break;
}
}
function handle_geolocation_query(position){
var lat = (position.coords.latitude);
var lon = (position.coords.longitude);
}
我想做的是获取设备的经度和纬度并将其作为参数传递给查询和数据库,也将相同的值用于其他事物。我不知道该怎么做。
任何帮助都感激不尽。
我想到的第一件事(这么晚了:D)是这样的:
-
在处理程序外部声明一个变量,比方说:
var 坐标 = {};
-
然后在你的“处理地理位置查询”处理程序中,触发一个事件,让你知道你的位置已经准备好了,假设你正在使用 jQuery:
$(coords).trigger('positionReady', 位置);
-
之后,在您需要这些坐标的任何地方,监听您的自定义“positionReady”事件,然后完成您的工作:
$(coords).on('positionReady', 函数(e, 位置) {
控制台.log(位置);
});
这将帮助您避免“意大利面条代码”,但同时,您需要异步“思考”,并且可能以您需要的(正确)方式使用回调。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)