我试图通过交替每个其他字符的颜色来为一些文本设置动画。我的代码正在以一种方式对其进行样式设置,但setTimeout
没有再次调用它来替换文本颜色。
问题似乎是我使用全局变量作为计数器,这可能是我忽略的一个简单问题。
有任何想法吗?这是我的javascript代码:
var num = 0;
function animateText(){
var str = "";
var title = document.getElementById("title").innerHTML;
for(var i = 0; i < title.length; i++){
if(num % 2 == 0){
if(i % 2 == 0){
str += '<span style = "color: silver;">' + title.charAt(i) + '</span>';
} else {
str += title.charAt(i) + "";
}
} else {
if(i % 2 != 0) {
str += '<span style = "color: silver;">' + title.charAt(i) + '</span>';
} else {
str += title.charAt(i) = "";
}
}
}
document.getElementById("title").innerHTML = str;
num++;
if(num == 10)
num = 0;
setTimeout("animateText()", 500);
}