Wie machen Matrix wie Textänderungseffekt in Javascript Stack-Überlauf

Wie auch immer, ich versuchte es auf eigene Faust zu machen, aber wie Sie ich nicht vermuten können.

Hier ist mein Code:

Was ich plane, auf dieser Seite zu tun wird, kann man erkennen, wie ich diesen Effekt zu tun, auf meinem eigenen hoch motiviert war.







Der Kopftext der Seite enthält eine solche Animation.

Sie beschleunigen auch und verlangsamen ihren Prozess, und hüpfen zwischen tut einen Zusatz passieren und einen Entfernungs Pass von dem, was ich sah auf meinen schnellen Durchlesen.

Der Nachteil ihres Codes ist, dass es alles ein Haufen von Schleifen zusammen schwappte, mit einem Bündel von „wenn“ s zwei oder drei Schleife zu enthalten, eine nach der anderen. und fügen Sie dann sie „Modus-Umschaltung“ auf, dass, wenn sie sagen: „Wenn wir im Modus-1 Add Sachen sind und tun es schnell, und wenn wir im Modus-2, entfernen Sie Sachen sind und die Geschwindigkeit senken, und wenn wir ‚re in diesem Submodus der beiden Modi, die Geschwindigkeit entsprechend, und wenn die Geschwindigkeit größer als diese ist oder weniger als das, und wir sind in diesem Modus, dann stoppen, was wir tun, 5 Sekunden warten und es wieder aufrufen “.







Aber sie beginnen mit einem Zitat, eine zufällige Stelle in der Zeichenfolge zu finden, und dann an dieser Stelle den Charakter zu ersetzen mit dem Charakter, sowie die neuen "<", "?", "

Und die Beschleunigung und Verlangsamung, da sie den zufällig gewählten Charakter-Typen hinzufügen und entfernen.

Eine schicke Lösung ist jedem Buchstaben einen eigenen Timer mit einer anderen Verzögerung zu geben, damit sie sich mit unterschiedlichen Geschwindigkeiten laufen, und für unterschiedliche Zeiträume. Aber das könnte einige schwerwiegende Systemressourcen für eine große Zeichenfolge saugen.

Die oben verwendet klassische Prototypvererbung, könnte es einen Verschluss für die gleiche Sache nutzen. Auch alle diese Prototyp-Funktionen in einem einzelnen Objekt werden könnte setzen, die Randomiser.prototype zugeordnet ist.







In Verbindung stehende Artikel