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

Vue implementiert das Hinzufügen eines Wasserzeicheneffekts zur Seite

Als ich kürzlich an einem Projekt arbeitete, wurd...

Lösung für den Fehler, dass IE6 select nicht durch div abgedeckt werden kann

Verwenden Sie div, um eine Maske zu erstellen oder...

Vollständige Schritte zum Erstellen eines Passwortgenerators mit Node.js

Inhaltsverzeichnis 1. Vorbereitung 2. Befehlszeil...

So erhöhen Sie die Ladegeschwindigkeit von HTML-Seiten

(1) Reduzieren Sie HTTP-Anfragen. (Ressourcendate...

Eine kurze Einführung in die Basiskomponenten der VUE uni-app

1. Scroll-Ansicht Beim vertikalen Scrollen müssen...

So ändern Sie die SSH-Portnummer in der Centos8-Umgebung

Inhaltsverzeichnis Vorwort Start Vorwort Die Stan...

JavaScript-Entwurfsmuster, Befehlsmuster

Das Befehlsmuster ist ein Verhaltensentwurfsmuste...

Detaillierte Erklärung der CSS-Textdekoration Textdekoration & Texthervorhebung

In CSS ist Text eines der häufigsten Dinge, mit d...

Das Vue-Projekt realisiert Anmelde- und Registrierungseffekte

In diesem Artikelbeispiel wird der spezifische Co...

HTML-Elemente durch Anzeige oder Sichtbarkeit verbergen

Manchmal müssen wir steuern, ob HTML-Elemente auf ...

Detaillierte Erklärung der Destrukturierungszuweisung in JavaScript

Inhaltsverzeichnis Konzept Array-Destrukturierung...

Detaillierte Erklärung der drei Möglichkeiten zum Festlegen von Rahmen in HTML

Drei Möglichkeiten zum Festlegen von Rahmen in HT...

Beispielcode zur Implementierung eines reinen CSS-Popup-Menüs mit Transform

Vorwort Wenn Sie ein Topmenü erstellen, müssen Si...