Inhaltsverzeichnis
Installation und Verwendung
Benutzerdefinierte Optionen festlegen
Bewegte Teilchen
更改交互行为
最终想法
Heim Web-Frontend HTML-Tutorial Particles.js: Einführung in die Grundlagen

Particles.js: Einführung in die Grundlagen

Aug 31, 2023 pm 09:37 PM

Particles.js: Einführung in die Grundlagen

Viele winzige Partikel, die sich bewegen und miteinander oder mit Ihnen interagieren, üben eine gewisse Anziehungskraft auf sie aus. Wenn Sie in eine Situation geraten, in der Sie mit einer großen Anzahl von Partikeln arbeiten müssen, wird Ihnen Particles.js gute Dienste leisten. Wie Sie am Namen erkennen können, handelt es sich um eine JavaScript-Bibliothek, die Sie bei der Erstellung von Partikelsystemen unterstützt. Außerdem ist es leicht, einfach zu bedienen und bietet Ihnen viel Kontrolle.

In diesem Tutorial stelle ich alle Funktionen dieser Bibliothek vor und helfe Ihnen beim Einstieg. Dieses Tutorial ist der erste Teil der Serie und behandelt nur die Grundlagen.

Installation und Verwendung

Zuerst müssen Sie die Bibliothek hosten. Sie können auf Ihren eigenen Server hochladen oder jsdeliver CDN verwenden, wie ich es getan habe.

<script src="//cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script>
Nach dem Login kopieren

Sie müssen außerdem ein DOM-Element erstellen, in dem Particles.js die Partikel erstellt. Geben Sie ihm zur späteren Bezugnahme ein leicht identifizierbares id.

<div id="particles-js"></div> 
Nach dem Login kopieren

Um nun ein grundlegendes Partikelsystem mit Standardeinstellungen zu erstellen, benötigen Sie nur eine Zeile JavaScript, um die Bibliothek zu initialisieren.

particlesJS();
Nach dem Login kopieren

Standardmäßig sind Partikel weiß. Sie sind außerdem durch dünne weiße Drähte miteinander verbunden. Wenn Sie also gerade nichts sehen, ändern Sie einfach den Hintergrund in einen anderen. Dies ist das CSS, das ich zum Stylen der Partikel verwende div:

#particles-js {
  background: cornflowerblue;
}
Nach dem Login kopieren

Versuchen Sie, irgendwo in der Demo unten zu klicken. Nach jedem Klick generiert Particles.js vier neue Partikel.

Benutzerdefinierte Optionen festlegen

Obwohl die Erstellung der vorherigen Demo nur vier Zeilen Code erforderte, entspricht das Endergebnis möglicherweise nicht Ihren Wünschen. Die Pellets kamen mir etwas zu groß und zu dicht vor. Vielleicht möchten Sie, dass die Partikel unterschiedliche Formen oder zufällige Größen haben. Mit Particles.js können Sie alle diese und weitere Eigenschaften in JSON festlegen, auf die Sie während der Initialisierung verweisen können. Die allgemeine Syntax zum Aufrufen dieser Funktion lautet wie folgt:

particlesJS(dom-id, path-json, callback (optional));
Nach dem Login kopieren

Hier ist dom-id 是您希望粒子出现的元素的 id。 path-json 是包含所有配置选项的 JSON 文件的路径,callback eine optionale Rückruffunktion. Sie können den JSON-Code anstelle des Pfads direkt in den zweiten Parameter einfügen.

Versuchen wir, mit dieser tollen Bibliothek fallende Schneeflocken zu erzeugen. Zunächst sieht unsere Funktion so aus:

particlesJS("snowfall", 'assets/snowflakes.json');
Nach dem Login kopieren

Ich habe die Rückruffunktion entfernt und das DOM Id in etwas Spezifischeres geändert. Schneeflocken haben meist eine kugelförmige Form. Sie fallen nach unten und sind ungleichmäßig groß. Außerdem sind sie im Gegensatz zu unserer ersten Demo nicht durch Kabel verbunden.

Bewegte Teilchen

Zunächst enthält unsere snowflakes.json-Datei den folgenden Code:

{
  "particles": {
  
  },
  "interactivity": {
    
  }
}
Nach dem Login kopieren

Alle Konfigurationsoptionen im Zusammenhang mit physikalischen Eigenschaften wie Form, Größe und Bewegung befinden sich in articles 内。所有决定交互行为的配置选项都将放在 interactivity.

Ich habe die Anzahl der Partikel auf 100 gesetzt. Dies hängt in der Regel vom verfügbaren Platz ab. Wie bereits erwähnt, habe ich auch die Form auf circle eingestellt. Zu diesem Zeitpunkt sollte Ihre Datei so aussehen:

{
  "particles": {
    "number": {
      "value": 100
    },
    "shape": {
      "type": "circle"
    }
  },
  "interactivity": {
    
  }
}
Nach dem Login kopieren

Ich habe einen Wert von 10 verwendet, um die Größe der Schneeflocken festzulegen. Da Schneeflocken unterschiedlich groß sind, werde ich random 设置为 true。这样,雪花可以具有零到我们指定的最大限制之间的任何大小。要禁用或删除将这些粒子链接在一起的所有行,您可以将 enable 设置为 false for line_linked.

Um Partikel zu verschieben, müssen Sie die Eigenschaft enable auf true setzen. Ohne weitere Einstellungen bewegen sich die Partikel zufällig, genau wie im Weltraum. Sie können die Richtung dieser Partikel mithilfe eines Zeichenfolgenwerts festlegen, z. B. "bottom". Auch wenn die allgemeine Bewegung der Partikel nach unten gerichtet ist, müssen sie sich dennoch leicht zufällig bewegen, um natürlich auszusehen. Dies kann erreicht werden, indem straight auf false gesetzt wird. Zu diesem Zeitpunkt wird enable 属性设置为 true。如果没有任何其他设置,粒子将随意移动,就像在太空中一样。您可以使用字符串值设置这些粒子的方向,例如 "bottom"。尽管粒子的一般运动是向下的,但它们仍然需要稍微随机地移动才能看起来自然。这可以通过将 straight 设置为 false 来实现。此时,snowflakes.json den folgenden Code haben:

{
  "particles": {
    "number": {
      "value": 100
    },
    "shape": {
      "type": "circle"
    },
    "size": {
      "value": 10,
      "random": true
    },
    "line_linked": {
      "enable": false
    },
    "move": {
      "enable": true,
      "speed": 2,
      "direction": "bottom",
      "straight": false
    }
  },
  "interactivity": {
    
  }
}
Nach dem Login kopieren

Mit dem obigen JSON-Code erhalten Sie die folgenden Ergebnisse:

更改交互行为

如果将鼠标悬停在上面的演示上,您会注意到线条仍然存在,但仅在悬停期间暂时显示。要完全删除它们,您可以将 onhover 事件的 enable 属性设置为 false。尝试在上面的演示中单击,您会注意到每次单击都会生成四个粒子。这是默认行为。您还可以使用 push 下的 articles_nb 属性更改粒子数量。在本例中,我已将此数字设置为 12。

您还可以使用 detect_on 选项确定是否检测窗口或画布上的事件。

以下是 JSON 文件的完整代码:

{
  "particles": {
    "number": {
      "value": 100
    },
    "shape": {
      "type": "circle"
    },
    "size": {
      "value": 10,
      "random": true
    },
    "line_linked": {
      "enable": false
    },
    "move": {
      "enable": true,
      "speed": 2,
      "direction": "bottom",
      "straight": false
    }
  },
  "interactivity": {
    "detect_on": "canvas",
    "events": {
      "onhover": {
        "enable": false
      }
    },
    "modes": {
      "push": {
        "particles_nb": 12
      }
    }
  }
}
Nach dem Login kopieren

如您所见,我不必专门启用 onclick 事件。默认情况下它是启用的。同样,我可以删除其他选项,例如 "detect_on": "canvas" under interactivity "straight": false under move。我保留它们是为了让初学者不会对粒子为何不沿直线移动等问题感到困惑。

您可以尝试不同的值来修改上面CodePen中的雪花。只需单击 JS 选项卡即可编辑 JSON。

最终想法

开始使用 Particles.js 很简单。如果您以前从未使用过粒子系统,这个库将帮助您立即入门。本教程只是对该库的基本介绍。在本系列的接下来的两个教程中,我将更详细地介绍该库的所有方面。

如果您对本教程有任何疑问,请在论坛上告诉我。

Das obige ist der detaillierte Inhalt vonParticles.js: Einführung in die Grundlagen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Schwierigkeiten bei der Aktualisierung der Zwischenspeicherung offizieller Konto -Webseiten: Wie vermeiden Sie den alten Cache, der sich auf die Benutzererfahrung nach der Versionsaktualisierung auswirkt? Schwierigkeiten bei der Aktualisierung der Zwischenspeicherung offizieller Konto -Webseiten: Wie vermeiden Sie den alten Cache, der sich auf die Benutzererfahrung nach der Versionsaktualisierung auswirkt? Mar 04, 2025 pm 12:32 PM

Das offizielle Konto -Webseite aktualisiert Cache, dieses Ding ist einfach und einfach und es ist kompliziert genug, um einen Topf davon zu trinken. Sie haben hart gearbeitet, um den offiziellen Account -Artikel zu aktualisieren, aber der Benutzer hat die alte Version immer noch geöffnet. Schauen wir uns in diesem Artikel die Wendungen und Wendungen und wie man dieses Problem anmutig ansehen. Nach dem Lesen können Sie sich leicht mit verschiedenen Caching -Problemen befassen, sodass Ihre Benutzer immer den frischesten Inhalt erleben können. Sprechen wir zuerst über die Grundlagen. Um es unverblümt auszudrücken, speichert der Browser oder Server einige statische Ressourcen (wie Bilder, CSS, JS) oder Seiteninhalte, um die Zugriffsgeschwindigkeit zu verbessern. Wenn Sie das nächste Mal darauf zugreifen, können Sie ihn direkt aus dem Cache abrufen, ohne ihn erneut herunterzuladen, und es ist natürlich schnell. Aber dieses Ding ist auch ein zweischneidiges Schwert. Die neue Version ist online,

Wie verwende ich HTML5 -Formularvalidierungsattribute, um die Benutzereingabe zu validieren? Wie verwende ich HTML5 -Formularvalidierungsattribute, um die Benutzereingabe zu validieren? Mar 17, 2025 pm 12:27 PM

In dem Artikel werden unter Verwendung von HTML5 -Formularvalidierungsattributen wie Erforderlich, Muster, Min, MAX und Längengrenzen erörtert, um die Benutzereingabe direkt im Browser zu validieren.

Was sind die besten Praktiken für die Kompatibilität des Cross-Browsers in HTML5? Was sind die besten Praktiken für die Kompatibilität des Cross-Browsers in HTML5? Mar 17, 2025 pm 12:20 PM

In Artikel werden Best Practices zur Gewährleistung der HTML5-Cross-Browser-Kompatibilität erörtert und sich auf die Erkennung von Merkmalen, die progressive Verbesserung und die Testmethoden konzentriert.

Wie füge ich PNG -Bildern auf Webseiten effizient Schlaganfalleffekte hinzu? Wie füge ich PNG -Bildern auf Webseiten effizient Schlaganfalleffekte hinzu? Mar 04, 2025 pm 02:39 PM

Dieser Artikel zeigt einen effizienten PNG -Grenzzusatz zu Webseiten mithilfe von CSS. Es wird argumentiert, dass CSS im Vergleich zu JavaScript oder Bibliotheken eine überlegene Leistung bietet, um zu beschreiben, wie die Randbreite, Stil und Farbe für subtile oder herausragende Effekte angepasst werden können

Was ist der Zweck des & lt; datalist & gt; Element? Was ist der Zweck des & lt; datalist & gt; Element? Mar 21, 2025 pm 12:33 PM

Der Artikel erörtert den HTML & lt; Datalist & gt; Element, das die Formulare verbessert, indem automatische Vorschläge bereitgestellt, die Benutzererfahrung verbessert und Fehler reduziert werden.Character Count: 159

Was ist der Zweck des & lt; Fortschritts & gt; Element? Was ist der Zweck des & lt; Fortschritts & gt; Element? Mar 21, 2025 pm 12:34 PM

Der Artikel erörtert den HTML & lt; Progress & gt; Element, Absicht, Styling und Unterschiede vom & lt; Meter & gt; Element. Das Hauptaugenmerk liegt auf der Verwendung & lt; Fortschritt & gt; Für Aufgabenabschluss und & lt; Meter & gt; für stati

Wie benutze ich die HTML5 & lt; Zeit & gt; Element, um Daten und Zeiten semantisch darzustellen? Wie benutze ich die HTML5 & lt; Zeit & gt; Element, um Daten und Zeiten semantisch darzustellen? Mar 12, 2025 pm 04:05 PM

Dieser Artikel erklärt den HTML5 & lt; Time & gt; Element für semantische Datum/Uhrzeit. Es betont die Wichtigkeit des DateTime-Attributs für die Maschinenlesbarkeit (ISO 8601-Format) neben menschenlesbarem Text, das Zubehör steigert

Was ist der Zweck des & lt; Meter & gt; Element? Was ist der Zweck des & lt; Meter & gt; Element? Mar 21, 2025 pm 12:35 PM

Der Artikel erörtert das HTML & lt; Meter & gt; Element, verwendet zur Anzeige von Skalar- oder Bruchwerten innerhalb eines Bereichs und seine gemeinsamen Anwendungen in der Webentwicklung. Es differenziert & lt; Meter & gt; von & lt; Fortschritt & gt; und Ex

See all articles