Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
informatique:langage:page-web:diaporama-css3-html5-javascript [2023/03/19 07:24] – [Modifier le code HTML avec JavaScript] Cédric ABONNEL | informatique:langage:page-web:diaporama-css3-html5-javascript [2023/03/19 07:33] (Version actuelle) – Cédric ABONNEL | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Diaporama HTML5/ | ||
+ | {{ : | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | |||
+ | ===== Besoin ===== | ||
+ | |||
+ | Le besoin exprimé est de créer un diaporama en HTML5/ | ||
+ | |||
+ | * Pour chaque diapo, un titre et une description s' | ||
+ | * Il peut y avoir un fichier audio opus associé à la diapo. Si il existe un fichier audio, le lire et passer à la diapo suivante à la fin de la lecture du fichier audio sinon passer à la diapo suivante au bout de 3 secondes. | ||
+ | * Il faudra également afficher un titre pour le diaporama, une liste de toutes les diapos disponibles avec leur titre. | ||
+ | * L' | ||
+ | * Les scripts et css complémentaires seront dans des fichiers séparés. | ||
+ | * La liste des diapo se trouve dans un fichier json. | ||
+ | * Il peut y avoir jusqu' | ||
+ | |||
+ | Le diaporama doit avoir un en-tête avec le titre du diaporama, une image qui prend toute la largeur à 80%, la liste des diapositives sur le côté droit, le titre et la description de la diapositive en cours en dessous de l' | ||
+ | |||
+ | |||
+ | ===== Analyse ===== | ||
+ | |||
+ | Pour créer un diaporama en HTML5/ | ||
+ | |||
+ | * Créer une page HTML pour votre diaporama. Cette page contiendra un conteneur pour afficher les diapositives, | ||
+ | |||
+ | * Écrire le CSS pour styliser votre page. Vous pouvez utiliser des frameworks tels que Bootstrap ou Materialize pour faciliter le processus. | ||
+ | |||
+ | * Écrire le code JavaScript pour récupérer les données des diapositives à partir d'un fichier JSON et les afficher dans le diaporama. Vous pouvez utiliser la méthode Fetch pour récupérer les données du fichier JSON. | ||
+ | |||
+ | * Ajouter un événement pour passer à la diapositive suivante après la fin de la lecture de l' | ||
+ | |||
+ | * Pour masquer le titre de la diapo en cours et son descriptif sur la diapo, vous pouvez ajouter une classe CSS pour cacher ces éléments. | ||
+ | |||
+ | * Pour le contrôleur audio, vous pouvez utiliser la balise audio HTML5 et ajouter des événements pour démarrer et arrêter la lecture. | ||
+ | |||
+ | | ||
+ | |||
+ | ===== Principe de fonctionnement ===== | ||
+ | |||
+ | ==== Afficher et masquer les diapos ==== | ||
+ | |||
+ | Dans le code CSS, chaque diapositive est définie comme un élément avec la classe '' | ||
+ | |||
+ | <code CSS> | ||
+ | /* Diapositives */ | ||
+ | .slide { | ||
+ | .. | ||
+ | display: none; | ||
+ | } | ||
+ | |||
+ | .slide.current { | ||
+ | .. | ||
+ | display: block; | ||
+ | } | ||
+ | </ | ||
+ | Lorsque l' | ||
+ | |||
+ | La propriété CSS '' | ||
+ | |||
+ | Lorsque vous utilisez '' | ||
+ | |||
+ | Dans le cas du diaporama, l' | ||
+ | |||
+ | <code JAVA> | ||
+ | // Récupérer la diapositive actuelle et la cacher | ||
+ | const currentSlide = document.querySelector(' | ||
+ | if (currentSlide) { | ||
+ | currentSlide.classList.remove(' | ||
+ | } | ||
+ | |||
+ | // Afficher la nouvelle diapositive | ||
+ | const newSlide = document.querySelectorAll(' | ||
+ | newSlide.classList.add(' | ||
+ | </ | ||
+ | |||
+ | ==== Modifier le code HTML avec JavaScript ==== | ||
+ | |||
+ | Le code JavaScript est utilisé pour ajouter, supprimer, modifier ou réorganiser les éléments HTML et les propriétés de ces éléments, afin de créer des pages web interactives et dynamiques. | ||
+ | |||
+ | Le code HTML est modifié par JavaScript en utilisant le Document Object Model (DOM). Le DOM est une représentation hiérarchique des éléments HTML d'une page web, qui peut être manipulée en utilisant des scripts JavaScript. | ||
+ | |||
+ | Lorsque le script JavaScript est exécuté, il peut accéder aux éléments HTML existants sur la page web en utilisant des sélecteurs de document, tels que '' | ||
+ | |||
+ | Le script JavaScript peut ensuite modifier les propriétés des éléments HTML, telles que le contenu du texte, les attributs, les styles CSS, etc. Il peut également ajouter des écouteurs d' | ||
+ | |||
+ | Dans notre code JavaScript, nous utilisons '' | ||
+ | |||
+ | Nous utilisons cette méthode pour récupérer la diapositive en cours et modifier sa propriété '' | ||
+ | |||
+ | <code JAVASCRIPT> | ||
+ | const slideshow = document.getElementById(' | ||
+ | |||
+ | ... | ||
+ | |||
+ | // Créer une nouvelle diapositive | ||
+ | const newSlide = document.createElement(' | ||
+ | newSlide.classList.add(' | ||
+ | newSlide.style.backgroundImage = `url(${slide.image})`; | ||
+ | |||
+ | // Ajouter le titre et la description de la diapositive | ||
+ | const title = document.createElement(' | ||
+ | title.textContent = slide.title; | ||
+ | newSlide.appendChild(title); | ||
+ | |||
+ | const description = document.createElement(' | ||
+ | description.textContent = slide.description; | ||
+ | newSlide.appendChild(description); | ||
+ | |||
+ | ... | ||
+ | |||
+ | // Ajouter la nouvelle diapositive au diaporama | ||
+ | slideshow.appendChild(newSlide); | ||
+ | | ||
+ | </ | ||
+ | |||
+ | et le code HTML : | ||
+ | |||
+ | <code HTML> | ||
+ | <div id=" | ||
+ | <!-- Les diapositives seront ajoutées via JavaScript --> | ||
+ | </ | ||
+ | </ | ||
+ | |||