Heim  >  Artikel  >  Web-Frontend  >  Wie baue ich mit HTML und JavaScript einen springenden Ball?

Wie baue ich mit HTML und JavaScript einen springenden Ball?

PHPz
PHPznach vorne
2023-09-01 18:49:07747Durchsuche

Wie baue ich mit HTML und JavaScript einen springenden Ball?

Wir erstellen zunächst mithilfe des Canvas-Tags ein Canvas-Element im HTML-Dokument. Als Nächstes zeichnen wir mit JavaScript einen Kreis auf der Leinwand und legen dessen Anfangsposition und Geschwindigkeit fest. Schließlich können wir JavaScript verwenden, um die Position des Kreises basierend auf seiner Geschwindigkeit kontinuierlich zu aktualisieren, und eine Kollisionserkennung hinzufügen, um die Geschwindigkeit zu ändern, wenn der Kreis den Rand der Leinwand berührt.

Methode

Um einen springenden Ball mit HTML und JavaScript zu erstellen, müssen Sie Folgendes tun -

  • Erstellen Sie eine HTML-Datei mit einem Canvas-Element, auf dem der Ball gezeichnet wird.

  • Erstellen Sie mit JavaScript kugelförmige Formen (z. B. Kreise) auf der Leinwand.

  • Verwenden Sie JavaScript, um den Ball auf die Leinwand zu bewegen und ihn abprallen zu lassen, wenn er den Rand erreicht.

  • Verwenden Sie JavaScript, um zu erkennen, wann der Ball die Kante berührt, und ändern Sie seine Richtung entsprechend.

  • Stilisieren Sie den Ball und die Leinwand nach Bedarf mit CSS.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Hier ist ein funktionierendes Beispiel eines springenden Balls, der mit HTML + CSS und reinem JavaScript erstellt wurde -

<!DOCTYPE html>
<html>
<head>
   <title>Bouncing Ball with JavaScript</title>
   <style>
      #ball {
         width: 50px;
         height: 50px;
         background-color: red;
         border-radius: 25px;
         position: absolute;
      }
   </style>
</head>
   <body>
      <div id="ball"></div>
      <script>
            const ball = document.getElementById("ball");
            let x = 0;
            let y = 0;
            let xSpeed = 5;
            let ySpeed = 5;
            function animate() {
            x += xSpeed;
            y += ySpeed;
            if (x + 50 > window.innerWidth || x < 0) {
               xSpeed = -xSpeed;
            }
            if (y + 50 > window.innerHeight || y < 0) {
               ySpeed = -ySpeed;
            }
            ball.style.left = x + "px";
            ball.style.top = y + "px";
            requestAnimationFrame(animate);
         }
        animate();
      </script>
   </body>
</html>
Die chinesische Übersetzung von

Erklärung

lautet:

Erklärung

  • Die HTML-Datei erstellt ein div-Element mit der ID „ball“, das als springender Ball verwendet wird.

  • Die CSS-Datei legt den Ball als roten Kreis mit einer Breite und Höhe von 50 Pixeln fest.

  • In der JavaScript-Datei verwenden wir zunächst document.getElementById("ball"), um das Ball-Element aus dem HTML abzurufen.

  • Dann legen wir einige Variablen für die x- und y-Position des Balls sowie die x- und y-Geschwindigkeit fest.

  • In der Funktion animate() aktualisieren wir die x- und y-Position des Balls, indem wir die x- und y-Geschwindigkeit zur Position des Balls hinzufügen.

  • Wir prüfen auch, ob der Ball den Rand des Bildschirms berührt. Wenn ja, kehren wir die x- oder y-Geschwindigkeit um, damit der Ball zurückprallt.

  • Schließlich setzen wir die linken und oberen CSS-Eigenschaften des Balls auf die neuen x- und y-Positionen und verwenden requestAnimationFrame(animate), um kontinuierlich die Animationsfunktion aufzurufen, um den Animationseffekt des springenden Balls zu erzeugen.

Dies ist nur ein einfaches Beispiel. Sie können weitere Funktionen hinzufügen, z. B. die Ballgröße und -farbe ändern, die Anfangsposition des Balls festlegen oder weitere Bälle hinzufügen.

Das obige ist der detaillierte Inhalt vonWie baue ich mit HTML und JavaScript einen springenden Ball?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen