Élément HTML «Détails» État de basculement avec JavaScript
Pour contrôler l'état d'expansion ou d'effondrement de l'élément
Pour le dire directement, la clé consiste à utiliser JavaScript pour contrôler l'état d'extension ou d'effondrement de l'élément <details></details>
de HTML. La clé est de faire fonctionner son attribut open
.

Quelles sont <details></details>
et les propriétés open
?
<details></details>
est un élément HTML natif qui crée des blocs de contenu pliables. Par défaut, il est fermé et le contenu à l'intérieur ne sera affiché qu'après avoir ajouté l'attribut open
. Par exemple:
<Dettots> <summary> Cliquez pour développer </summary> <p> Voici les détails. </p> </fords>
Si l'attribut open
est ajouté, la page sera élargie par défaut lors du chargement:

<Détails Open> <summary> Développez par défaut </summary> <p> Ce paragraphe peut être vu dès le début. </p> </fords>
Comment changer l'état d'expansion des <details>
avec JavaScript?
Vous pouvez obtenir l'élément via JS, puis contrôler sa valeur d'attribut open
. Par exemple:
const de détails = document.QuerySelector («Détails»); // développe des détails.open = true; // Effondrent les détails.open = false; // Commutation status de détail.open =! Details.open;
Une pratique courante consiste à lier les événements de clic pour changer d'état, comme l'ajout d'un bouton:

<Button id = "toggleDetails"> Détails de l'interrupteur </ bouton> <de détails id = "myDetails"> <summary> Plus d'informations </summary> <p> Plus d'instructions ... </p> </fords> <cript> document.getElementById ('toggleDetails'). AddEventListener ('click', function () { const de détails = document.getElementById («myDetails»); Details.open =! Details.open; }); </cript>
De cette façon, l'utilisateur peut contrôler l'expansion et l'effondrement de <details></details>
en cliquant sur le bouton.
Des questions et des notes fréquemment posées
- N'utilisez pas de classe ou de style pour juger le statut : bien que vous puissiez ajouter une classe pour correspondre aux changements de style,
open
qui contrôle vraiment l'extension / l'effondrement. - Il est invalide de ne pas
open
dans le style en ligne : écriture<details style="open: true"></details>
, et les attributs natifs doivent être utilisés. - La compatibilité est bonne, mais ne vous attendez pas à ce que les anciens navigateurs prennent en charge : les navigateurs modernes traditionnels prennent en charge
<details></details>
, mais il sera ignoré dans IE ou certaines versions plus anciennes.
Suggestions de scénarios d'application pratiques
- "Options avancées" Effondrent la zone de forme
- Cliquez pour développer la réponse dans la page FAQ
- Masquer les informations de débogage, non affichées par défaut, cliquez sur le bouton pour vous développer pour afficher
Si vous souhaitez que certains contenus soient cachés par défaut, mais permettez aux utilisateurs de se développer activement et que vous souhaitez utiliser JS pour contrôler dynamiquement ce comportement, <details></details>
plus JS fonctionne, l'attribut open
est le moyen le plus simple.
Fondamentalement, c'est tout.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le chargement paresseux natif est une fonction de navigateur intégrée qui permet le chargement paresseux des images en ajoutant un attribut chargé = "paresseux" à la balise. 1. Il ne nécessite pas de bibliothèques JavaScript ou tierces et est utilisée directement dans HTML; 2. Il convient aux images qui ne sont pas affichées sur le premier écran sous la page, les modules complémentaires de défilement de la galerie d'images et les grandes ressources d'image; 3. Il ne convient pas aux images avec premier écran ou affichage: aucun; 4. Lorsque vous l'utilisez, un espace réservé approprié doit être réglé pour éviter la gigue de mise en page; 5. Il devrait optimiser le chargement d'image réactif en combinaison avec les attributs SRCSET et tailles; 6. Les problèmes de compatibilité doivent être pris en compte. Certains anciens navigateurs ne le soutiennent pas. Ils peuvent être utilisés grâce à la détection des fonctionnalités et combinés avec des solutions JavaScript.

SRCSET et les tailles sont des propriétés clés pour l'implémentation HTML des images réactives. SRCSET fournit plusieurs sources d'image et leur densité de largeur ou de pixel, telles que 400W et 800W, et le navigateur sélectionne l'image appropriée en conséquence; Les tailles définissent la largeur d'affichage de l'image sous différentes largeurs d'écran, telles que (max-largeur: 600px) 100VW, 50VW, afin que le navigateur puisse correspondre plus précisément à la taille de l'image. Dans une utilisation réelle, vous devez préparer des images multi-taille, clairement nommées, concevoir la disposition conformément à la requête multimédia, et tester les performances de l'équipement pour éviter d'ignorer les tailles ou les erreurs unitaires, enregistrant ainsi la bande passante et améliorant les performances.

La principale différence est que TextArea prend en charge plusieurs lignes d'entrée de texte, tandis que InputText n'est disponible qu'en une seule ligne. 1. Utilisez InputType = "Text" pour être adapté à la saisie utilisateur courte et unique, telle que le nom d'utilisateur, l'adresse e-mail, etc., et peut définir MaxLength pour limiter le nombre de caractères. Le navigateur offre une fonction de remplissage automatique, ce qui facilite le style uniformément entre les navigateurs; 2. Utilisez TextArea pour les scénarios qui nécessitent plusieurs lignes d'entrée, telles que les boîtes de commentaires, les formulaires de rétroaction, les pauses et les paragraphes de ligne de support, et peuvent contrôler la taille via CSS ou désactiver la fonction de réglage. Les deux fonctionnalités du formulaire de support telles que les espaces réservées et les remplissages requis, mais TextArea définit la taille à travers les lignes et les cols, et l'entrée utilise l'attribut de taille.

Il s'agit d'un élément au niveau du bloc, utilisé pour diviser de grandes zones de contenu de bloc; Il s'agit d'un élément en ligne, adapté à l'emballage de petits segments de fragments de texte ou de contenu. Les différences spécifiques sont les suivantes: 1. Occuper exclusivement une ligne, une largeur et une hauteur, des marges intérieures et extérieures peuvent être définies, qui sont souvent utilisées dans des structures de mise en page telles que les en-têtes, les barres latérales, etc.; 2. N'enveloppez pas les lignes, n'occupez que la largeur du contenu et sont utilisés pour le contrôle du style local tel que la décoloration, le gras, etc.; 3. En termes de scénarios d'utilisation, il convient à l'organisation de mise en page et de structure de la zone globale, et est utilisé pour les ajustements de style à petite échelle qui n'affectent pas la disposition globale; 4. Lors de la nidification, il peut contenir des éléments et les éléments au niveau du bloc ne doivent pas être imbriqués à l'intérieur.

Pour obtenir un effet pop-up de base, vous devez suivre les étapes suivantes: 1. Structure: Utilisez HTML pour créer des boutons de déclenchement, une couche de masque et une zone de contenu contextuelle; 2. Style: Définissez la mise en page cachée par défaut, la mise en page centrée, l'arrière-plan du masque et les styles de bouton de fermeture via CSS; 3. Interaction: Utilisez JavaScript pour lier les événements de clic pour contrôler l'affichage et la masque de fenêtre contextuels et peuvent étendre la fonction de clôture de la clé ESC; 4. Optimisation: ajoutez l'animation CSS pour améliorer l'expérience utilisateur. L'ensemble du processus ne nécessite pas de bibliothèque tierce, ce qui convient pour réaliser rapidement des fonctions contextuelles de base.

Pour commencer rapidement avec HTML, il vous suffit de maîtriser quelques balises de base pour créer un squelette Web. 1. La structure de la page est essentielle et, qui est l'élément racine, contient des méta-informations et est la zone d'affichage du contenu. 2. Utilisez le titre. Plus le niveau est élevé, plus le nombre est petit. Utilisez des balises pour segmenter le texte pour éviter de sauter le niveau. 3. Le lien utilise des balises et correspond aux attributs HREF, et l'image utilise des balises et contient des attributs SRC et Alt. 4. La liste est divisée en listes non ordonnées et listes commandées. Chaque entrée est représentée et doit être imbriquée dans la liste. 5. Les débutants n'ont pas à forcer la mémorisation de toutes les balises. Il est plus efficace de les écrire et de les vérifier pendant que vous écrivez. Maître la structure, le texte, les liens, les images et les listes pour créer des pages Web de base.

Les travailleurs Web sont des threads indépendants en cours d'exécution dans l'arrière-plan du navigateur, utilisés pour effectuer des tâches longues sans bloquer l'interface utilisateur. Ils sont implémentés via des fichiers JavaScript et sont lancés par des scripts dans des pages HTML, mais une fois exécutés, ils sont séparés du thread principal. 1. Les travailleurs Web ne peuvent pas accéder directement au DOM pour garantir la stabilité de la page; 2. Ils réalisent une communication sécurisée avec le fil principal via PostMessage () et OnMessage; 3. Il convient au traitement des tâches à forte intensité de processeur telles que les images, l'informatique complexe, l'analyse des données; 4. Il prend en charge certaines API telles que Settimeout, Fetch et IndededDB; 5. Lorsque vous l'utilisez, vous devez faire attention aux difficultés de débogage, à l'utilisation de la mémoire, aux restrictions inter-domaines et à d'autres problèmes.

Shadowdom est une technologie utilisée dans la technologie des composants Web pour créer des sous-arbres DOM isolés. 1. Il permet la monture d'une structure DOM indépendante sur les éléments HTML ordinaires, avec ses propres styles et comportements, et n'affecte pas le document principal; 2. Créé via JavaScript, comme l'utilisation de la méthode attachshadow et la définition du mode à ouvrir; 3. Lorsqu'il est utilisé en combinaison avec HTML, il a trois caractéristiques principales: la structure claire, l'isolement de style et la projection de contenu (fente); 4. Les notes incluent le débogage complexe, le contrôle de la portée du style, les frais généraux de performances et les problèmes de compatibilité du cadre. En bref, Shadowdom fournit des capacités d'encapsulation natives pour construire des composants d'interface utilisateur réutilisables et non polluants.
