Wie kann ich die Textfarbe Buchstabe für Buchstabe ändern?
P粉613735289
2023-08-31 13:03:36
<p>Ich möchte, dass jeder Buchstabe im Text nacheinander seine Farbe ändert. Zum Beispiel:
Hallo Welt
„H“ wird zuerst rot, dann „E“, dann „L“ und so weiter. </p>
<p>Ich habe versucht, jeden Buchstaben in einen Span zu packen und JQuery und eine Schleife zu verwenden. Aber es funktioniert nicht. </p>
<p>
<pre class="brush:js;toolbar:false;">$("span").ready(function() {
var Buchstaben = $("span").length;
for (sei i = 0; i <= Buchstaben; i++) {
$("span")[i].css("color", "red");
}
})</pre>
<pre class="brush:html;toolbar:false;"><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"> ;</script>
<span>H</span>
<span>E</span>
<span>L</span>
<span>L</span>
<span>O</span>
<span>, </span>
<span>W</span>
<span>O</span>
<span>R</span>
<span>L</span>
<span>D</span></pre>
</p>
你走在正确的轨道上,但是你需要延迟改变
color
的时间(比如说100ms
),这样效果才能被看到。为了延迟,我们使用了接受2个参数的方法setTimeout
:100ms
)。当选择一个延迟时间,比如
100ms
,我们应该将其乘以当前字母的索引(准确地说是当前的span
),这样效果才能被看到。这是一个实时演示:
在jQuery中,你可以使用
each
函数来循环遍历选择器的所有元素为了在两次颜色变化之间“等待”,你可以将CSS变化嵌入到
setTimeout
函数中,链接到each循环的索引