Bonjour, amis développeurs ! Aujourd'hui, je suis ravi de partager un projet que j'ai récemment réalisé : une Horloge analogique. Ce projet est une manière visuellement attrayante et interactive d’afficher l’heure à l’aide d’un cadran d’horloge analogique traditionnel. C'est un excellent projet pour perfectionner vos compétences en JavaScript, CSS et HTML, en particulier en travaillant avec des animations, la manipulation DOM et les fonctions basées sur le temps. Que vous soyez un débutant cherchant à s'entraîner ou un développeur expérimenté souhaitant créer une interface d'horloge classique, ce projet est un excellent choix.
L'Horloge analogique est une horloge en temps réel qui imite l'apparence et la fonctionnalité d'une horloge analogique traditionnelle. L'horloge se met à jour dynamiquement chaque seconde, les aiguilles des heures, des minutes et des secondes tournant en douceur pour refléter l'heure actuelle. Ce projet est idéal pour les développeurs qui souhaitent s'entraîner à créer des applications Web dynamiques et visuellement attrayantes.
Voici un aperçu rapide de la structure du projet :
Analog-Clock/ ├── index.html ├── style.css └── script.js
Pour démarrer le projet, suivez ces étapes :
Cloner le dépôt :
git clone https://github.com/abhishekgurjar-in/Analog-Clock.git
Ouvrez le répertoire du projet :
cd Analog-Clock
Exécuter le projet :
Le fichier index.html définit la structure de la page Web, y compris le conteneur d'horloge et l'en-tête. Ci-dessous un extrait du code HTML :
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Analog Clock</title> <link rel="stylesheet" href="style.css" /> <script src="script.js" defer></script> </head> <body> <div class="header"> <h1>Analog Clock</h1> </div> <div id="clockContainer"> <div id="hour"></div> <div id="minute"></div> <div id="second"></div> </div> <div class="footer"> <p>Made with ❤️ by Abhishek Gurjar</p> </div> </body> </html>
Le fichier style.css stylise le conteneur et les aiguilles de l'horloge, en s'assurant qu'ils tournent correctement pour afficher l'heure. Les styles clés incluent :
#clockContainer { position: relative; margin: auto; height: 30vw; width: 30vw; background: url(clock.png) no-repeat; background-size: 100%; } #hour, #minute, #second { position: absolute; background: black; border-radius: 10px; transform-origin: bottom; } #hour { width: 1.8%; height: 25%; top: 25%; left: 48.85%; opacity: 0.8; } #minute { width: 1.6%; height: 30%; top: 19%; left: 48.9%; opacity: 0.8; } #second { width: 1%; height: 40%; top: 9%; left: 49.25%; opacity: 0.8; } .header { margin: 80px; text-align: center; } .footer { margin: 50px; text-align: center; }
Le fichier script.js gère le calcul de l'heure actuelle et met à jour la rotation des aiguilles de l'horloge en conséquence. Vous trouverez ci-dessous un extrait du code JavaScript :
setInterval(() => { const date = new Date(); const hourTime = date.getHours(); const minuteTime = date.getMinutes(); const secondTime = date.getSeconds(); const hourRotation = 30 * hourTime + minuteTime / 2; const minuteRotation = 6 * minuteTime; const secondRotation = 6 * secondTime; const hour = document.getElementById('hour'); const minute = document.getElementById('minute'); const second = document.getElementById('second'); hour.style.transform = `rotate(${hourRotation}deg)`; minute.style.transform = `rotate(${minuteRotation}deg)`; second.style.transform = `rotate(${secondRotation}deg)`; }, 1000);
Vous pouvez consulter la démo en direct de l'horloge analogique ici.
Construire cette horloge analogique a été une expérience enrichissante qui m'a permis d'approfondir les animations JavaScript et la manipulation du DOM. J'espère que ce projet vous inspirera pour créer vos propres applications interactives et visuellement attrayantes. N'hésitez pas à explorer le code, à le personnaliser et à l'utiliser dans vos propres projets. Bon codage !
Ce projet s'inspire de la conception classique des horloges analogiques et de la nécessité d'un outil simple d'affichage de l'heure en temps réel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!