我在FCC上构建了一个天气应用程序,因为我的代码不能正常工作而被卡住了。我没有获得浏览器访问我的位置的弹出窗口请求。
我在button.click
函数中包含了弹出请求。
我是一个新手,我感到非常沮丧。我需要帮助!!
这是我的代码:
var Api= "https://fcc-weather-api.glitch.me/api/current?";
$(document).ready(function(){
$("button").click(function(){
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
var lat = "lat=" + position.coords.latitude ;
var lon = "lon=" + position.coords.longitude;
$.get(Api+lat+"&"+ lon, function(result){
$("#city").text(result.main.name);
$("#country").text(result.sys.country);
$("#weather").text(result.weather[0].main);
$("#w-icon").text(result.weather[0].icon);
$("#temp").text(result.main.temp);
$("humidity").text(result.main.humidity);
});
});
});
else {
console.log ("Geolocation is not supported by this browser");
}
});
答案 0 :(得分:1)
在浏览器中打开开发人员工具。
查看控制台。
阅读错误消息。
未捕获的ReferenceError:lat未定义
您已在传递给lat
的函数中定义getCurrentPosition
,但您正尝试使用 该函数。
您需要移动尝试使用它的代码,使其位于函数内部。