日期:2024 年 12 月 18 日
建立天氣應用程式是鞏固您對 JavaScript、DOM 操作、事件處理和 API 整合理解的絕佳方法。該專案將教您如何從 API 獲取資料並將其動態顯示在網頁上。
為您的專案建立必要的檔案:
在 OpenWeatherMap 上註冊並取得 API 金鑰。您將使用他們的 API 來獲取天氣資料。
範例 API URL:
https://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric
建立一個簡單的佈局,其中包含輸入欄位和顯示天氣資訊的部分。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Weather App</title> <link rel="stylesheet" href="styles.css"> </head> <body> <div> <hr> <h3> <strong>4. Styling (Optional)</strong> </h3> <p>Add some CSS to make your app visually appealing.<br> </p> <pre class="brush:php;toolbar:false">#weather-app { text-align: center; font-family: Arial, sans-serif; margin: 50px auto; width: 300px; } input, button { padding: 10px; margin: 10px 0; } #weather-result { margin-top: 20px; }
使用 JavaScript 擷取使用者輸入,從 API 取得資料並顯示結果。
// JavaScript code for the weather app const API_KEY = "your_api_key_here"; // Replace with your actual API key document.getElementById("search-btn").addEventListener("click", () => { const city = document.getElementById("city-input").value; if (city) { fetchWeather(city); } else { displayError("Please enter a city name."); } }); function fetchWeather(city) { const apiURL = `https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${API_KEY}&units=metric`; fetch(apiURL) .then(response => { if (!response.ok) { throw new Error("City not found"); } return response.json(); }) .then(data => displayWeather(data)) .catch(error => displayError(error.message)); } function displayWeather(data) { document.getElementById("error-message").textContent = ""; document.getElementById("city-name").textContent = `Weather in ${data.name}`; document.getElementById("temperature").textContent = `Temperature: ${data.main.temp}°C`; document.getElementById("description").textContent = `Condition: ${data.weather[0].description}`; document.getElementById("humidity").textContent = `Humidity: ${data.main.humidity}%`; } function displayError(message) { document.getElementById("error-message").textContent = message; document.getElementById("city-name").textContent = ""; document.getElementById("temperature").textContent = ""; document.getElementById("description").textContent = ""; document.getElementById("humidity").textContent = ""; }
點選我的 GitHub Repo
建立天氣應用程式整合了許多重要的 JavaScript 技能,例如:
透過完成此項目,您將獲得建立更複雜的 JavaScript 應用程式的信心。
後續步驟:明天,我們將重點放在JavaScript 中的錯誤處理和調試,探索有效識別和解決問題的技術。敬請期待!
以上是專案:使用 JavaScript 和天氣 API 建立天氣應用程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!