In diesem Artikel wird der spezifische JavaScript-Code zur Implementierung von Tippspielen zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt Effektbild: Bedarfsanalyse: 1. Zeigen Sie die in das Char-Div einzugebenden Buchstaben in Großbuchstaben an Quelltext: HTML-Teil <mian> <div id="char">A</div> <div id="result">Bitte drücken Sie den auf dem Bildschirm angezeigten Buchstaben</div> </mian> CSS-Teil 1. Um einige Spezialeffekte zu erzielen, erstellen Sie zunächst eine animate.css-Datei und kapseln Sie einige Animationseffekte darin ein /*animieren.css*/ .animiert { -Webkit-Animationsdauer: 1 s; Animationsdauer: 1 s; -webkit-animation-fill-mode: beides; Animationsfüllmodus: beides; } .animiert.unendlich { -webkit-animation-iteration-count: unendlich; Anzahl der Animationsiterationen: unendlich; } .animiertes.Scharnier { -Webkit-Animationsdauer: 2 s; Animationsdauer: 2s; } .animiert.flipOutX, .animiert.flipOutY, .animiert.bounceIn, .animiert.bounceOut { -Webkit-Animationsdauer: 0,75 s; Animationsdauer: 0,75 s; } @-webkit-keyframes zoomIn { aus { Deckkraft: 0; -webkit-transform: scale3d(.3, .3, .3); transformieren: scale3d(.3, .3, .3); } 50 % { Deckkraft: 1; } } @keyframes zoomIn { aus { Deckkraft: 0; -webkit-transform: scale3d(.3, .3, .3); transformieren: scale3d(.3, .3, .3); } 50 % { Deckkraft: 1; } } .zoomIn { -webkit-animation-name: zoomIn; Animationsname: zoomIn; } .animiert { -Webkit-Animationsdauer: 1 s; Animationsdauer: 1 s; -webkit-animation-fill-mode: beides; Animationsfüllmodus: beides; } @-webkit-keyframes schütteln { von, bis -webkit-transform: übersetzen3d(0, 0, 0); transformieren: übersetzen3d(0, 0, 0); } 10 %, 30 %, 50 %, 70 %, 90 % { -webkit-transform: übersetzen3d(-10px, 0, 0); transformieren: übersetzen3d(-10px, 0, 0); } 20 %, 40 %, 60 %, 80 % { -webkit-transform: übersetzen3d(10px, 0, 0); transformieren: übersetzen3d(10px, 0, 0); } } @keyframes schütteln { von, bis -webkit-transform: übersetzen3d(0, 0, 0); transformieren: übersetzen3d(0, 0, 0); } 10 %, 30 %, 50 %, 70 %, 90 % { -webkit-transform: übersetzen3d(-10px, 0, 0); transformieren: übersetzen3d(-10px, 0, 0); } 20 %, 40 %, 60 %, 80 % { -webkit-transform: übersetzen3d(10px, 0, 0); transformieren: übersetzen3d(10px, 0, 0); } } .schütteln { -webkit-animation-name: schütteln; Animationsname: Shake; } 2.css-Hauptcode, keine Version mit Animationseffekten <Stil> Körper { Rand: 0; /*Aktiviere das elastische Layout und richte die Unterelemente im elastischen Layout horizontal und vertikal in der Mitte aus*/ Anzeige: Flex; Inhalt ausrichten: zentriert; Elemente ausrichten: zentrieren; /*Text zentrieren*/ Textausrichtung: zentriert; /*Farbverlauf für den Hintergrund festlegen*/ Hintergrund: radialer Farbverlauf (Kreis, Nr. 444, Nr. 111, Nr. 000); } #char { Schriftgröße: 400px; Farbe: hellgrün; /*Textschatten setzen*/ /*text-shadow: horizontale Position vertikale Position Unschärfe Abstand Schatten Farbe*/ /*Position kann negativ sein*/ Textschatten: 0 0 50px #666; } #Ergebnis { Schriftgröße: 20px; Farbe: #888; } /*Suche das Div-Element mit der ID char und dem Klassennamen error*/ #char.error { Farbe: rot; } </Stil> JavaScript 1. Um den Code zu vereinfachen, kapseln Sie zunächst einige häufig verwendete benutzerdefinierte Konstruktoren <Skript> // Definieren Sie eine Funktion: rand // Parameter: minimale Ganzzahl, maximale Ganzzahl // Rückgabewert: eine zufällige Ganzzahl zwischen zwei Ganzzahlen Funktion rand(min, max) { gibt parseInt(Math.random() * (max - min + 1)) + min zurück; } </Skript> 2. Im Hauptteil von js müssen Sie die gekapselte Funktion verwenden und aufrufen <Skript> // Das relevante Element abrufen var charDiv = document.getElementById('char'); var resultDiv = document.getElementById('Ergebnis'); // Code wird verwendet, um den Code der Buchstaben auf der Seite aufzuzeichnen. Verwenden Sie globale Variablen und Sie können ihn überall verwenden. var code, tirme; var rightNum = 0;//Richtige Zahl var wrongNum = 0;//Falsche Zahl // 1 Zeige den im Char-Div einzugebenden Buchstaben in Großbuchstaben an showChar(); // 3 Tastenereignisse an das Dokument binden document.onkeyup = function (e) { // Ereignisobjekt e = window.event || e; // Schlüsselcode abrufen var keyCode = e.keyCode || e.which; // 4 Wenn der Eingabeinhalt mit dem Zeichen übereinstimmt, if (keyCode == code) { //Zeige die richtige Animation: animiertes ZoomIn charDiv.className = "animiertes ZoomIn"; rechteNum++; Zeichen anzeigen() } // 5 Wenn der Eingabeinhalt nicht mit char übereinstimmt, sonst { // Fehleranimation anzeigen: animierter Shake-Fehler charDiv.className = "animierter Shake-Fehler"; falscheZahl++ } // Um beim nächsten Mal eine Animation zu haben, entferne den Klassennamen, nachdem diese Animation beendet ist setTimeout(function () { charDiv.Klassenname = ""; }, 500) // 6 Unabhängig davon, ob es richtig oder falsch ist, wird die Genauigkeitsrate im Ergebnis von Zeit zu Zeit aktualisiert // Genauigkeitsrate = richtige Zeiten / Gesamtzeiten resultDiv.innerHTML = "Genauigkeitsrate:" + parseInt(rightNum / (rightNum + wrongNum) * 100) + "%" } // Funktion: Zufällige Anzeige der im Char-Div einzutragenden Buchstaben: uppercase function showChar() { // Zuerst zufällig einen Buchstabencode auswählen code = rand(65, 90); // In einen Buchstaben umwandeln var char = String.fromCharCode(code); // Im Char-Div anzeigen charDiv.innerHTML = char; } </Skript> Gesamtcode <html> <Kopf> <meta charset="utf-8"> <title>Tippspiel</title> <!--Animationsbibliothek animate.css einführen--> <link rel="stylesheet" href="animate.css" > <Stil> Körper { Rand: 0; /*Aktiviere das elastische Layout und richte die Unterelemente im elastischen Layout horizontal und vertikal in der Mitte aus*/ Anzeige: Flex; Inhalt ausrichten: zentriert; Elemente ausrichten: zentrieren; /*Text zentrieren*/ Textausrichtung: zentriert; /*Farbverlauf für den Hintergrund festlegen*/ Hintergrund: radialer Farbverlauf (Kreis, Nr. 444, Nr. 111, Nr. 000); } #char { Schriftgröße: 400px; Farbe: hellgrün; /*Textschatten setzen*/ /*text-shadow: horizontale Position vertikale Position Unschärfe Abstand Schatten Farbe*/ /*Position kann negativ sein*/ Textschatten: 0 0 50px #666; } #Ergebnis { Schriftgröße: 20px; Farbe: #888; } /*Suche das Div-Element mit der ID char und dem Klassennamenfehler*/ #char.error { Farbe: rot; } </Stil> </Kopf> <Text> <mian> <div id="char">A</div> <div id="result">Bitte drücken Sie den auf dem Bildschirm angezeigten Buchstaben</div> </mian> </body> </html> <Skript> // Definieren Sie eine Funktion: rand // Parameter: minimale Ganzzahl, maximale Ganzzahl // Rückgabewert: eine zufällige Ganzzahl zwischen zwei Ganzzahlen Funktion rand(min, max) { gibt parseInt(Math.random() * (max - min + 1)) + min zurück; } </Skript> <Skript> // Das relevante Element abrufen var charDiv = document.getElementById('char'); var resultDiv = document.getElementById('Ergebnis'); // Code wird verwendet, um den Code der Buchstaben auf der Seite aufzuzeichnen. Verwenden Sie globale Variablen und Sie können ihn überall verwenden. var code, tirme; var rightNum = 0;//Richtige Zahl var wrongNum = 0;//Falsche Zahl // 1 Zeige den im Char-Div einzugebenden Buchstaben in Großbuchstaben an showChar(); // 3 Tastenereignisse an das Dokument binden document.onkeyup = function (e) { // Ereignisobjekt e = window.event || e; // Schlüsselcode abrufen var keyCode = e.keyCode || e.which; // 4 Wenn der Eingabeinhalt mit dem Zeichen übereinstimmt, if (keyCode == code) { //Zeige die richtige Animation: animiertes ZoomIn charDiv.className = "animiertes ZoomIn"; rechteNum++; Zeichen anzeigen() } // 5 Wenn der Eingabeinhalt nicht mit char übereinstimmt, sonst { // Fehleranimation anzeigen: animierter Shake-Fehler charDiv.className = "animierter Shake-Fehler"; falscheZahl++ } // Um beim nächsten Mal eine Animation zu haben, entferne den Klassennamen, nachdem diese Animation beendet ist setTimeout(function () { charDiv.Klassenname = ""; }, 500) // 6 Unabhängig davon, ob es richtig oder falsch ist, wird die Genauigkeitsrate im Ergebnis von Zeit zu Zeit aktualisiert // Genauigkeitsrate = richtige Zeiten / Gesamtzeiten resultDiv.innerHTML = "Genauigkeitsrate:" + parseInt(rightNum / (rightNum + wrongNum) * 100) + "%" } // Funktion: Zufällige Anzeige der im Char-Div einzutragenden Buchstaben: uppercase function showChar() { // Zuerst zufällig einen Buchstabencode auswählen code = rand(65, 90); // In einen Buchstaben umwandeln var char = String.fromCharCode(code); // Im Char-Div anzeigen charDiv.innerHTML = char; } </Skript> 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:
|
<<: So installieren Sie Docker auf CentOS
>>: Detaillierte Beispiele zur Konvertierung von Zeilen in Spalten und Spalten in Zeilen in MySQL
【Autor】 Liu Bo: Leitender Datenbankmanager im Ctr...
1. Grund der Sperrung Es gibt viele Gründe, warum...
Zusammenfassung: Welche Methode sollte für die My...
Die Pseudoklasse „Before/After“ entspricht dem Ei...
Einführung Aufgrund der zunehmenden Popularität v...
Inhaltsverzeichnis 1. Implementierungsprinzip des...
Laden Sie das Tutorial zum Paket mysql-connector-...
Berechnung des Boxmodells <br />Rand + Rahme...
Die default_server-Direktive von nginx kann einen...
Verwenden Sie JOIN anstelle von Unterabfragen MyS...
Memo: Einfach erleben. Eintrag: Nr. 209 Diese Bei...
Inhaltsverzeichnis 1. Gegenstand 1.1 Was ist ein ...
Inhaltsverzeichnis Docker Compose-Nutzungsszenari...
Dieser Artikel beschreibt hauptsächlich, wie die ...
Vor der Inbetriebnahme unbedingt lesen: Hinweis: ...