JS implementiert einen einfachen TodoList-Effekt (Notizblock)

JS implementiert einen einfachen TodoList-Effekt (Notizblock)

Das Notizblockprogramm wird mithilfe der drei wichtigsten Front-End-Frameworks HTML+CSS+JavaScript implementiert.

Implementierung der Grundfunktionen zum Hinzufügen, Abschließen und Löschen von Aufgaben im Notizblock.

Nachfolgend der vollständige Code des Programms:

1. Effektanzeige erzielen

2. HTML-Code

<Kopf>
  <meta charset="UTF-8">
  <Titel>Aufgabenliste</Titel>
//CSS-Datei importieren <link rel="stylesheet" href="todoList.css" >
</Kopf>
<Text>
<div Klasse="meinKopf">
   <h2>Meine ToDo-Liste</h2>
  <Tabelle>
    <tr>
      <td><input type="text" placeholder="Bitte geben Sie Ihre Aufgaben ein..." id="things"></td>
      <td> <span id="add" onclick="addElement()">hinzufügen</span></td>
    </tr>
  </Tabelle>
</div>
 
//Abschnitt „To-Do-Liste“, Inhalt wird dynamisch generiert<ul></ul>
 
<div Klasse="test2"></div>
</body>
<!--Fügen Sie das JavaScript-Element am Ende ein. Andernfalls ist der DOM-Baum bei der Ausführung von JavaScript noch nicht erstellt und es treten unerwartete Fehler auf-->
<script src="todoList.js" type="text/javascript"></script>
</html>

3. CSS-Code

@Schriftart {
  Schriftfamilie: 'Iconfont'; /* Projekt-ID 2680005 */
  Quelle: URL ('//at.alicdn.com/t/font_2680005_2v81j5og00f.woff2?t=1626424842361') Format ('woff2'),
  url('//at.alicdn.com/t/font_2680005_2v81j5og00f.woff?t=1626424842361') format('woff'),
  URL ('//at.alicdn.com/t/font_2680005_2v81j5og00f.ttf?t=1626424842361') Format ('TrueType');
}
 
Körper {
  Rand: 0;
  Polsterung: 0;
}
*{
  Box-Größe: Rahmenbox;
}
.meinKopf{
   Hintergrundfarbe: hellrosa;
   Textausrichtung: zentriert;
   Polsterung: 5px 0px 10px 0px;
   Farbe: Aliceblau;
 }
  Tisch{
  Rand: 0 automatisch;
}
 #Dinge{
   Breite: 180px;
   Höhe: 30px;
   Rahmenradius: 3px;
   Gliederung: keine;
   Rand: durchgehend 1 Pixel weiß;
 }
 #hinzufügen{
   Anzeige: Inline-Block;
   Breite: 80px;
   Höhe: 30px;
   Hintergrundfarbe: Gainsboro;
   Farbe: grau;
   Rahmenradius: 3px;
   Zeilenhöhe: 30px;
 }
  #hinzufügen:hover{
    Cursor: Zeiger;
    Hintergrundfarbe: dunkelgrau;
    Farbe: grau;
  }
ul{
  Rand: 0px;
  Polsterung: 0px;
}
  ul li{
    Listenstil: keiner;
    /*Textausrichtung: zentriert;*/
    Position: relativ;
    Polsterung links: 40px;
    Höhe: 40px;
    Zeilenhöhe: 40px;
  }
  ul li:n-tes-Kind(ungerade) {
  Hintergrundfarbe: #f9f9f9;
}
  ul li:hover{
  Cursor: Zeiger;
  Hintergrundfarbe: #dddddd;
}
 
  ul li.check{
  Hintergrundfarbe: #888888;
  Textdekoration: durchgestrichen;
  Farbe: #f9f9f9;
}
  ul li.check::before{
 
    Inhalt: '';
    Position: absolut;
    Rahmenfarbe: #fff;
    Rahmenstil: durchgezogen;
    Rahmenbreite: 0 2px 2px 0;
    oben: 10px;
    links: 16px;
 
    transformieren: drehen (45 Grad);
    Höhe: 15px;
    Breite: 7px;
}
.schließen{
  Position: absolut;
  rechts: 0px;
  oben: 0px;
  Polsterung: 0px 20px;
  Schriftgröße: 16px;
}
.schließen:hover{
  Hintergrundfarbe: #f44336;
  Farbe: weiß;
}

4. Javascript-Code

//1. Fügen Sie nach jedem Span einen Schließknoten hinzu var myNodelist = document.getElementsByTagName ("li")
 
für (var i=0;i<myNodelist.length;i++)
{
  var span = document.createElement("span");
 
  var txt = document.createTextNode("\u00D7");
 
  span.className="schließen";
  span.appendChild(txt);
  meineKnotenliste[i].appendChild(span);
 
}
 
//2. Löschereignis verarbeiten var close = document.getElementsByClassName("close")
für (var i=0;i<close.length;i++)
{
  schließen[i].onclick=function () {
    //parentElement bedeutet, den übergeordneten Elementknoten des aktuellen Knotens zurückzugeben var div = this.parentElement
    div.style.display="keine"
  }
}
 
//3. Verarbeiten des Taskabschlussereignisses var list = document.querySelector ("ul")
console.log(Liste)
list.addEventListener('klicken',Funktion (ev) {
//Das Attribut event.target kann verwendet werden, um eine Ereignisdelegierung zu implementieren, z. B. um ein Ereignis an ul zu binden, es kann jedoch ausgelöst werden, wenn auf li geklickt wird //tagName ist der Tag-Name des Elements, wenn (ev.target.tagName === 'LI')
{
  //Die Umschaltmethode wechselt zwischen hide() und show() für das ausgewählte Element. //classList führt die Arbeit an der Klasse des Elements weiter aus. ev.target.classList.toggle('check')
}
},FALSCH);
 
//4. Klicken Sie auf die Schaltfläche „Hinzufügen“ und fügen Sie der Listenfunktion addElement(){ einen Aufgabeneintrag hinzu.
  var Dinge = document.getElementById('Dinge').value
 
 // Alarm (localStorage.setItem("mutodolist",JSON.stringify(Dinge)))
 
  var li = document.createElement('li')
 
  var t = document.createTextNode(Dinge)
 
  wenn (Dinge == '')
  {
    alert("Bitte geben Sie die ausstehenden Ereignisse ein")
  }
  anders
  {
    list.anhängenKind(li)
    li.appendChild(t)
  }
 
  var span = document.createElement('span')
  var txt = document.createTextNode('\u00D7')
 
  span.className='schließen'
  span.appendChild(txt)
  li.appendChild(span)
 
  für (var i=0;i<close.length;i++)
  {
    schließen[i].onclick=function () {
      var div = dieses.übergeordnetesElement
      div.style.display="keine"
    }
  }
}

Beim Implementieren des Programms stellte ich fest, dass ich die Bedeutung einiger Codes verstand, aber als ich begann, sie selbst zu schreiben, fiel mir nicht ein, wie ich sie vervollständigen sollte.

Ich glaube, unterm Strich habe ich das Programmieren nicht genug geübt und kann aus dem Gelernten keine Rückschlüsse ziehen und es in mein eigenes Denken integrieren.

Wenn Sie nach dem Lesen dieses Artikels einen Notizblockeffekt erstellen möchten, empfiehlt es sich daher, den Code selbst einzugeben. Denn nur wenn Sie den Code selbst eingeben, können Sie erkennen, wo Mängel und Fehler liegen.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Verwenden von Front-End-HTML+CSS+JS zum Entwickeln einer einfachen TODOLIST-Funktion (Notizblock)
  • Natives JavaScript zur Implementierung der To-Do-Liste-Funktion
  • Vue.js To-Do-Liste Implementierungscode
  • JavaScript-Beispiel für eine ODO-Listenanalyse

<<:  Häufige Szenarien und Vermeidungsmethoden für Indexfehler in MySQL

>>:  GZIP-Komprimierung Tomcat und Prozessdiagramm zur Verbesserung der Web-Leistung

Artikel empfehlen

CSS Skills Collection – Klassiker unter den Klassikern

Entfernen Sie das gepunktete Kästchen auf dem Link...

Detaillierte Erläuterung der Verwendung des Linux-Befehls seq

01. Befehlsübersicht Der Befehl „seq“ wird verwen...

Beispiel für die Implementierung einer virtuellen Liste im WeChat Mini-Programm

Inhaltsverzeichnis Vorwort analysieren Erste Rend...

Vue: Zwei Komponenten auf gleicher Ebene erreichen eine Wertübertragung

Vue-Komponenten sind verbunden, daher ist es unve...

Implementierungsschritte zur Installation eines Redis-Containers in Docker

Inhaltsverzeichnis Redis auf Docker installieren ...

Schritte zum Wiederherstellen von Code aus einem Docker-Container-Image

Manchmal geht der Code verloren und Sie müssen de...

js verwendet die Reduce-Methode, um Ihren Code eleganter zu gestalten

Vorwort In tatsächlichen Projekten kann die häufi...

Detaillierte Erklärung langsamer MySQL-Abfragen

Informationen zu MySQL-Vorgängen abfragen Status ...

So installieren Sie den MySQL 5.7.28-Binärmodus unter CentOS 7.4

Linux-Systemversion: CentOS7.4 MySQL-Version: 5.7...

So überprüfen Sie die Version des Kali Linux-Systems

1. Überprüfen Sie die Kali-Linux-Systemversion Be...

Beispielcode einer Vue-Anwendung basierend auf der Axios-Anforderungskapselung

Inhaltsverzeichnis Was ist Axios? Axios-Anforderu...