-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
44 lines (36 loc) · 1.77 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
"use strict"
async function getWeather() {
let city = document.getElementById("city");
let state = document.getElementById("state");
let temperature = document.getElementById("temperature");
let feelsLike = document.getElementById("feelsLike");
let wind = document.getElementById("wind");
let humidity = document.getElementById("humidity");
let image = document.getElementById("image");
let form = document.getElementById("WeatherContainer");
let inputField = document.getElementById("chosenCity");
let newUrl = encodeURIComponent(`${inputField.value}`);
let response = await fetch(`//api.openweathermap.org/data/2.5/weather?q=${newUrl}&appid=cdf1a7daa4674455386f14cadc943c0f&lang=ru&units=metric`);
let result = await response.json();
city.innerHTML = "Город: " + result.name;
if (result.name == undefined) {
city.innerHTML = "Город не выбран";
state.innerHTML = "Нет данных"
temperature.innerHTML = "";
feelsLike.innerHTML = "";
humidity.innerHTML = "";
image.src = "";
wind.innerHTML = "";
};
temperature.innerHTML = "Температура: " + Math.round(result.main.temp) + "°C";
state.innerHTML = result.weather[0].description;
image.src = "https://api.openweathermap.org/img/w/" + result.weather[0].icon + ".png";
feelsLike.innerHTML = "Ощущается как: " + Math.round(result.main.feels_like) + "°C";
wind.innerHTML = "Ветер: " + Math.round(result.wind.speed) + "м/с";
humidity.innerHTML = "Влажность: " + result.main.humidity + "%";
form.addEventListener("submit", function(event) {
event.preventDefault();
getWeather();
})
}
window.addEventListener("load", getWeather);