Le navigateur peut se souvenir du contenu édité
Ce tutoriel montre comment rendre les éléments HTML modifiables et persister ces modifications à l'aide de localStorage
. La capacité du navigateur à se souvenir du contenu édité est présentée, abordant la question des modifications temporaires qui disparaissent lors de la rafraîchissement.
L'ajout de l'attribut contenteditable
à tout élément HTML le transforme en une zone modifiable, similaire à une TextArea.
<div contenteditable=""> Ce texte est maintenant modifiable! </div>
Bien que limité dans une application large, cette fonctionnalité s'avère utile pour des modifications de conception en cours rapides ou des commentaires du client. Cependant, les modifications apportées à contenteditable
ne sont pas persistantes; Une page actualisera ou le changement de navigateur les efface.
Pour maintenir les modifications à travers les rafraîchissements de page, localStorage
fournit une solution simple. Cela implique deux étapes:
- Enregistrer les modifications: lors de la perte de focus (événement
blur
), enregistrez l'innerhtml de l'élément àlocalStorage
à l'aide d'une clé unique (par exemple, "DataStorage-" Element ID). - Restauration des modifications: sur le chargement de la page, parcourez
localStorage
, identifiant les clés correspondant aux éléments de la page. Si une correspondance est trouvée, restaurez l'InnerHTML enregistré.
Voici le code JavaScript:
const Editables = document.QuerySelectorAll ("[ContentEditable]"); // Enregistrer les modifications sur Blur Modification des modifications (el => { el.addeventListener ("blur", () => { localStorage.SetItem ("DataStorage-" El.id, el.innerhtml); }); }); // Restaurer les modifications de chargement pour (Laissez Key dans localStorage) { if (key.includs ("dataStorage-")) { const id = key.replace ("dataStorage-", ""); document.QuerySelector ("#" ID) .InnerHtml = localStorage.getItem (KEY); } }
Cette méthode offre une approche simple des modifications persistantes sans intégration de base de données complexe. Les concepts connexes comprennent:
-
document.designMode = "on"
: Active l'édition pour tous les éléments de page. - Mavo: une solution plus robuste avec authentification et stockage de données.
- Stockage KV: une alternative potentiellement plus rapide à
localStorage
.
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

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.

Undress AI Tool
Images de déshabillage gratuites

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)

Sujets chauds

Il est sorti! Félicitations à l'équipe Vue pour l'avoir fait, je sais que ce fut un effort massif et une longue période à venir. Tous les nouveaux documents aussi.

J'ai eu quelqu'un qui écrivait avec cette question très légitime. Lea vient de bloguer sur la façon dont vous pouvez obtenir les propriétés CSS valides elles-mêmes du navigateur. C'est comme ça.

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Si nous devons afficher la documentation à l'utilisateur directement dans l'éditeur WordPress, quelle est la meilleure façon de le faire?

Il existe un certain nombre de ces applications de bureau où l'objectif montre votre site à différentes dimensions en même temps. Vous pouvez donc, par exemple, écrire

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

CSS Grid est une collection de propriétés conçues pour faciliter la mise en page qu'elle ne l'a jamais été. Comme tout, il y a un peu une courbe d'apprentissage, mais Grid est
