我正在对函数和HTML5 GeoLocation API提供一些帮助。
我想使用用户当前位置(经度和纬度)生成网址。
我设法让代码工作以找到当前用户的位置
并将position.coords
对象分配给名为coords的变量。
我想知道的是我是否可以返回locationSuccess函数中的对象,然后将该对象作为generateURL函数的参数传递,并检索纬度和经度以控制日志记录完成的URL。
我可能完全错了,但是一些帮助会很棒。 TIA。
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
function generateURL() {
}
function app() {
getUserLocation();
}
window.onload = app();
答案 0 :(得分:1)
返回对象有点麻烦,因为 logoutUser() {
console.log('Logout the user');
}
函数是异步的。
您可以将getCurrentPosition
对象作为参数传递给coords
函数,并在generateURL
函数内调用它。
locationSuccess
JSFiddle //由于iframe安全问题,代码段不起作用
答案 1 :(得分:1)
将变量position
作为参数传递给generateURL()
函数。请参阅下面的修改和评论。
// app.js
function getUserLocation() {
function locationSuccess(position) {
console.log("success");
var coords = position.coords;
// Pass the object as a parameter to the generateURL() function.
generateURL(position);
}
function locationError() {
console.log("error")
}
navigator.geolocation.getCurrentPosition(locationSuccess, locationError);
}
// Added: variable position as a parameter to the function
function generateURL(position) {
console.log(position);
}
function app() {
getUserLocation();
}
window.onload = app();