使用JavaScript设置CSS边框的样式

使用JavaScript设置CSS边框的样式,javascript,html,css,Javascript,Html,Css,我正试图通过使用JavaScript在颜色数组中循环来更改边框的颜色。我了解如何使用JavaScript操作大多数CSS属性,但在操作具有多个值(即边框:#px、实心、彩色)的CSS属性时遇到困难 这是我的JS: var self = document.getElementById("self"); var colorArray = ["red", "yellow", "blue", "green", "orange", "cyan", "gray"]; var colorIndex

我正试图通过使用JavaScript在颜色数组中循环来更改边框的颜色。我了解如何使用JavaScript操作大多数CSS属性,但在操作具有多个值(即边框:#px、实心、彩色)的CSS属性时遇到困难

这是我的JS:

  var self = document.getElementById("self");
  var colorArray = ["red", "yellow", "blue", "green", "orange", "cyan", "gray"];
  var colorIndex = 0;

  function changeColor () {
    self.style.border = 6px solid colorArray[colorIndex];
    colorIndex++;

    if (colorIndex >= colorArray.length) {
      colorIndex = 0;
    }
  }

setInterval(changeColor,1000);

self.style.border=有问题。。。线路。我有什么问题?

丹尼尔几乎是对的。不要忘记css声明中属性值之间的间距。见下文

<script type="text/javascript">
var self = document.getElementById("self");
var colorArray = ["red", "yellow", "blue", "green", "orange", "cyan", "gray"];
var colorIndex = 0;

function changeColor () {
    self.style.border = "6px solid " + colorArray[colorIndex];
    colorIndex++;

    if (colorIndex >= colorArray.length) {
        colorIndex = 0;
    }
}

setInterval(changeColor,1000);
</script>

var self=document.getElementById(“self”);
var colorArray=[“红色”、“黄色”、“蓝色”、“绿色”、“橙色”、“青色”、“灰色”];
var指数=0;
函数changeColor(){
self.style.border=“6px solid”+colorArray[colorIndex];
彩色索引++;
if(colorIndex>=colorArray.length){
颜色指数=0;
}
}
设置间隔(changeColor,1000);

如果您只想更改边框的颜色,则无需使用
边框
速记来更改边框的各个方面:

self.style.borderColor = colorArray[colorIndex];

以下是您应该更改的内容,因为在您的案例中,除了颜色之外,其他都是字符串值:

self.style.border=“6px solid”+colorArray[colorIndex]

完整代码:

var self = document.getElementById("self");
var colorArray = ["red", "yellow", "blue", "green", "orange", "cyan", "gray"];
var colorIndex = 0;

function changeColor () {
self.style.border = "6px solid " + colorArray[colorIndex];
colorIndex++;

if (colorIndex >= colorArray.length) {
  colorIndex = 0;
}
}


setInterval(changeColor,1000);
问候,,
Ashok

尝试更改为
self.style.border='6px solid'+colorArray[colorIndex]
问题在于
6px solid colorArray[colorIndex]
不是有效的JavaScript.Right。该行的有效JS版本是什么?”6x solid'+colorArray[colorIndex]似乎不起作用。缺少空格->
'6px solid'+colorArray[colorIndex]
@adeno是正确的。现在它工作得很好。哇。在为您提供解决方案时,我发现同时添加了三个答案。我的答案几乎与user3677980相同。我想告诉你最新情况。