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:
|
<<: Häufige Szenarien und Vermeidungsmethoden für Indexfehler in MySQL
>>: GZIP-Komprimierung Tomcat und Prozessdiagramm zur Verbesserung der Web-Leistung
Voraussetzungen Compose ist ein Tool zum Orchestr...
Lassen Sie mich zunächst ein Beispiel geben (wenn...
Beim Überprüfen der langsamen Abfrage stellte ich...
1. Einleitung Beim Schreiben von Animationseffekt...
Verwenden von mock.js im Vue-Projekt Auswahl des ...
1. MySQL herunterladen Offizielle Website-Downloa...
Ich habe zufällig festgestellt, dass Vue.$set im ...
Inhaltsverzeichnis Verfahren Demo Mini-Programm B...
Der Befehl zum Löschen von Bildern im Docker laut...
Inhaltsverzeichnis Stile in uni-app Zusammenfasse...
Vorwort Das Konzept des Dunkelmodus stammt ursprü...
Hintergrund Grundlegende Konzepte CSS filter wend...
1. Geben Sie das Verzeichnis ein, in dem Ihr Proj...
Später habe ich auch hinzugefügt, wie man Jupyter...
Rahmenstil Die Eigenschaft „Border-Style“ gibt an...