Å gjøre teksten på et nettsted redigerbar av brukere er enklere enn du kanskje forventer. HTML gir et attributt til dette formålet: contenteditable
.
De contenteditable
Attributtet ble først introdusert i 2014 med utgivelsen av HTML5. Det spesifiserer om innholdet det styrer, kan endres av en besøkende fra nettstedet i nettleseren.
Støtte for Contenteditable Attribute
De fleste moderne desktop-nettlesere støtter attributtet. Disse inkluderer:
- Chrome 4.0 og oppover
- Internet Explorer 6 og nyere
- Firefox 3.5 og nyere
- Safari 3.1 og oppover
- Opera 10.1 og oppover
- Microsoft Edge
Det samme gjelder for de fleste mobile nettlesere også.
Hvordan bruke Contenteditable
Bare legg til attributtet til HTML-elementet du vil gjøre redigerbare. Den har tre mulige verdier:ekte
, falsk
og arve
. Arve
er standardverdien, noe som betyr at elementet tar på seg verdien av sin overordnede. På samme måte vil eventuelle barnelementer i ditt nylig redigerbare innhold også bli redigerbart, med mindre du endrer sine verdier til falsk
. For eksempel å lage en DIV
element redigerbar, bruk:
Opprett en redigerbar gjøremålsliste med innholdsrettbar
Redigerbart innhold gir mest mening når du kobler sammen det med lokal lagring, slik at innholdet vedvarer mellom økter og nettstedbesøk.
- Åpne siden din i et HTML-editor.
- Opprett en punktliste, uordnet liste som heter myTasks:
- Noen oppgave
- En annen oppgave
- Legg til
contenteditable
attributt til - Legg til en lenke til jQuery i
Dette eksemplet bruker Google CDN, men du kan være vert for det selv eller bruk en annen CDN hvis du foretrekker det.
- På bunnen av siden din, like over
tag, legg til skriptet ditt:
- $(document.ready(function() {
- }); Dette er starten på jQuery
document.ready
funksjonen og forteller at nettleseren skal laste dette skriptet etter at dokumentet har lastet fullt ut.
Inne i document.ready
funksjon, legg til skriptet ditt for å laste oppgavene til localStorage og få alle oppgaver som ble lagret der tidligere: $ (document.ready (funksjon () {
- $ ("# myTasks"). uskarphet (funksjon () {// når markøren forlater elementet #myTasks
-
-
- localStorage.setItem ('myTasksData', this.innerHTML); // lagre til localStorage
-
-
- });
-
-
- hvis (localStorage.getItem ('myTasksData')) {// hvis det er innhold i lokalStorage
-
-
- $ ( "# MyTasks") html (localStorage.getItem ( 'myTasksData').); // sett innhold på side
-
-
- }
- });
HTML for hele siden ser slik ut:
Skriv inn elementer for listen din. Nettleseren lagrer den for deg, slik at når du åpner nettleseren din, vil den fortsatt være her.
Mine oppgaver