我在js / jquery中创建一个简单的天气应用程序。 simpleweather函数的一个组成部分是它应该全局影响 var 华氏度,但是当我稍后在if / else语句中调用它时,它会将 var fahrenheit日志记录为我做错了什么?
var fahrenheit = 0;
var celsius = 0;
$(document).ready(function() {
$.simpleWeather({
location: 'newyork, NY',
woeid: '',
unit: 'f',
success: function(weather) {
//renames weather.temp as fahrenheit
fahrenheit = weather.temp;
console.log(fahrenheit);
//puts that value into .fahrenheit div
$(".fahrenheit").html(fahrenheit);
//converts to celsius then puts in .celsius div
celsius = fahrenheit - 32;
var celsius = celsius * 5;
var celsius = celsius / 9;
var celsius = parseInt(celsius);
$(".celsius").html(celsius);
},
});
});
if (fahrenheit > 55) {
$(".scarf").html('<img src="img/scarf.svg"></img>');
} else {
$(".scarf").html("");
};
答案 0 :(得分:1)
您应该将以下代码放在success
回调中。 (Ajax工作异步。)
if (fahrenheit > 55) {
$(".scarf").html('<img src="img/scarf.svg"></img>');
} else {
$(".scarf").html("");
};