你好,我找到了一个教程,介绍如何使用地下天气API创建一个简单的天气应用程序。我从字面上复制了整个代码(只进行了很小的修改),以查看应用程序的功能,但不起作用。有关HTML是在这里:AJAX API代码检查?地下天气api?
<div class="container">
<div id="forecast">
<h1>Weather at <span id="location">
</span></h1>
<div id="imgdiv">
<img id="img" src=""/>
</div>
<p>It is currently <span id="temp">
</span> degrees F with <span id="desc">
</span></p>
<p>Wind: <span id="wind">
</span></p>
</div>
</div>
而且我的JavaScript是在这里:
$(document).ready(function() {
var Geo = {};
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(success, error);
}
else {
alert("Geolocation off");
}
function error() {
alert("We couldn't find you");
}
function success(position) {
Geo.lat = position.coords.latitude;
Geo.lng = position.coords.longitude;
alert("Success");
var key = "MYKEY"
var Weather = "http://api.wunderground.com/api/MYKEY" +
"/forecast/geolookup/conditions/q/" +
Geo.lat + "," + Geo.lng + ".json";
$.ajax({
url: Weather,
dataType: "jsonp",
success: function(data) {
var location = data["location"]["city"];
var temp = data["current_observation"]["temp_f"];
var img = data["current_observation"]["icon_url"];
var desc = data["current_observation"]["weather"];
var wind = ["current_observation"]["wind_string"];
$("#location").html(location);
$("#temp").html(temp);
$("#desc").html(desc);
$("#wind").html(wind);
$("#img").attr("src", img);
},
fail: function() {
alert("Nah son");
}
})
}
})
的HTML显示和加载我与说“成功”的警告招呼,表明检索地理位置不是问题。但是文字并没有改变来显示天气:/所以这是我需要审查的代码的一部分。
我在想我必须正确地关闭所有的东西,或者我如何使用$ .ajax(),因为这已经在我最近一直在处理的其他项目中导致了很多问题。
任何帮助,他会非常感激!我对编码很陌生,所以如果我在那里犯了一个愚蠢的错误,我很抱歉。虽然通过简单地从其他来源复制并添加警报和更改警报文本,但我不认为那里会有重大缺陷。
下面是我用来建立这个代码的文章的链接:http://www.developerdrive.com/2014/09/how-to-build-a-weather-app-with-html5s-geolocation-api/
而这里的地下天气的API文档:https://www.wunderground.com/weather/api
感谢您的帮助!
浏览器的开放式控制台'SHIFT + CTRL + C'(或'Shift +⌘+ C'得到了实际的API密钥进行更换)并告诉我们那里有什么错误。 –
控制台不显示任何东西,这也令我困惑 – mraaron