【发布时间】:2018-10-25 13:12:04
【问题描述】:
var borderColors = ["rgb(244, 66, 215)", "rgb(119, 0, 247)", "rgb(0, 65, 247)", "rgb(0, 209, 247)", "rgb(0, 247, 86)", "rgb(205, 247, 0)","rgb(247, 90, 0)"]
var borders = document.querySelectorAll(".borders")
for (var i = 0; i < borders.length; i++) {
borders[i].addEventListener("mouseover", function() {
var randomColor = [Math.floor(Math.random() * borderColors.length)]
console.log(randomColor)
this.style.borderColor = randomColor
})
}
randomColor 作为数组索引位置返回,但不是数组项的实际值。如果我在 this.style.borderColor 之后用 rgb 值替换 randomColor ,它将改变颜色,但随机值不起作用。提前致谢!
【问题讨论】:
-
你需要使用随机生成的索引访问数组:
this.style.borderColor = borderColors[randomColor]。 -
var randomColor = borderColors[Math.floor...];- 您在右侧部分有数组索引括号,您只是忘记将数组放在它前面。
标签: javascript html css arrays mouseover