Rumah > Soal Jawab > teks badan
P粉5210131232023-09-01 10:14:21
Anda berada di landasan yang betul, tetapi anda perlu menangguhkan perubahancolor
的时间(比如说100ms
),这样效果才能被看到。为了延迟,我们使用了接受2个参数的方法setTimeout
:
100ms
). Apabila memilih masa tunda, seperti 100ms
,我们应该将其乘以当前字母的索引(准确地说是当前的span
, kita harus mendarabkannya dengan indeks huruf semasa (
Ini ialah demo langsung:
/** * 循环遍历“span”元素。 * 延迟100ms * i(当前span索引),以便稍后改变索引为“i”的span的颜色。 * 你可以根据需要更改延迟时间(在这个例子中是100)。 */ $('span').each((i, el) => setTimeout(() => $(el).css('color', 'red'), i * 100))
<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>
P粉8659009942023-09-01 00:21:23
Dalam jQuery, anda boleh menggunakan fungsi each
untuk mengulangi semua elemen pemilih
Untuk "menunggu" antara dua perubahan warna, anda boleh membenamkan perubahan CSS ke dalam fungsi setTimeout
, dipautkan ke indeks setiap gelung
$(".letters span").each(function(index, elem) { setTimeout(function() { $(elem).css('color', 'red'); }, index * 500); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="letters"> <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> </div>