如何通过$ .getjson方法JSON准确访问weather API

时间:2017-11-18 13:32:26

标签: jquery api getjson

我在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");
    }
         });

https://codepen.io/Ojomiba/pen/dVgQeQ

1 个答案:

答案 0 :(得分:1)

在浏览器中打开开发人员工具。

查看控制台。

阅读错误消息

  

未捕获的ReferenceError:lat未定义

您已在传递给lat的函数中定义getCurrentPosition,但您正尝试使用 该函数。

您需要移动尝试使用它的代码,使其位于函数内部。