使用Javascript更改文本的颜色
我正在尝试制作一个程序,在这个程序中,我使用一个函数,使用数组和for循环来更改预写文本的颜色,这取决于用户在提示时输入的内容。这是我的密码:使用Javascript更改文本的颜色,javascript,Javascript,我正在尝试制作一个程序,在这个程序中,我使用一个函数,使用数组和for循环来更改预写文本的颜色,这取决于用户在提示时输入的内容。这是我的密码: //注释必须在此处。 //此函数将文本的颜色更改为指定颜色的名称。 函数changeColor(彩色文本){ var text=document.getElementById(“colorpar”); text.innerHTML=“颜色为“+colorText+”; } //在此处声明、创建并将值放入颜色数组 变量颜色=新数组(5); 颜色[0]=“
//注释必须在此处。
//此函数将文本的颜色更改为指定颜色的名称。
函数changeColor(彩色文本){
var text=document.getElementById(“colorpar”);
text.innerHTML=“颜色为“+colorText+”;
}
//在此处声明、创建并将值放入颜色数组
变量颜色=新数组(5);
颜色[0]=“绿色”;
颜色[1]=“蓝色”;
颜色[2]=“黄色”;
颜色[3]=“橙色”;
颜色[4]=“红色”;
//创建一个运行4次的循环。
//每次它都会要求用户输入一个介于0和4之间的数字。
//如果输入无效输入,则显示的颜色应为黑色。
//否则,在数组中该索引处显示颜色。
对于(var i=1;i使用SetInterval进行此操作
检查以下代码段
函数changeColor(彩色文本){
var text=document.getElementById(“colorpar”);
text.innerHTML=“颜色为“+colorText+”;
}
//在此处声明、创建并将值放入颜色数组
变量颜色=新数组(5);
颜色[0]=“绿色”;
颜色[1]=“蓝色”;
颜色[2]=“黄色”;
颜色[3]=“橙色”;
颜色[4]=“红色”;
//创建一个运行4次的循环。
//每次它都会要求用户输入一个介于0和4之间的数字。
//如果输入无效输入,则显示的颜色应为黑色。
//否则,在数组中该索引处显示颜色。
var x=0;
var intervalId=setInterval(函数(){
如果(x==4){
clearInterval(intervalId);
}
var colNumber=window.prompt(“输入一个从0到4的数字:”);
如果(colNumber==0 | | colNumber==1 | | colNumber==2 | | colNumber==3 | | colNumber==4){
setTimeout(changeColor(colors[colNumber]),1000);
}否则{
变色(“黑色”);
}
x++;
},100);
颜色是黑色的。
font
标记已被弃用,在HTML5中不受支持。不要使用它。改用CSS样式。这是一个类,我们还没有学习任何CSS。该函数是由我的教授创建的。我所做的唯一事情是在“//在此处声明、创建并将值放入您的颜色数组”@Polyov下,因为他的比较ison操作符是==
而不是==
(1)你应该找到一个新的班级或新老师,按照2016年编写的JS/HTML,而不是2006年。(2)你需要给浏览器一个“呼吸”(重新渲染)的机会在颜色更改之间。@InitialBN问题是,您的代码实际上正在工作。如果您使用Chrome开发工具(或类似工具)在changeColor函数中设置断点,您将看到文本的颜色更改。这可能是浏览器在使用新颜色重新绘制屏幕之前进入循环中的下一个迭代。这会起作用,但解释一下它为什么会解决问题会很好。效果非常好!唯一的问题是我们还没有学过类似的东西,还有屁股ignment是指使用我们在课堂上所学的内容,这些内容仅用于/while循环和数组。如果我使用它,我可能不会得到分数。我不认为它可以像您提到的仅用于循环的方式解决。@InitialBN我同意Geeky。如果您必须使用提示输入数据,则没有其他解决方案。如果您可以使用inp触发更改在页面和按钮上,还有其他的解决方案。听起来好像是一个老师自己想出的问题,他自己没有尝试过。我很确定你不需要额外的TimeTimeUT。如果它有任何帮助……考虑接受答案。