2015-05-04 121 views
-1

我是JavaScript新手,很抱歉提出这个问题的简单性。来自数组的JavaScript随机颜色

加载的网页我想我的div是一个随机的颜色表示在我的数组中。

HTML

body onload="start"()" 

JS

var color = ["red", "blue", "yellow", "green"]; 

function start() { 

    document.getElementById("sq").style.backgroundColor =  color[Math.floor(Math.random() * color.length)]; 
} 

我的道歉,我不能得到随机颜色设置为股利。我试图直接设置颜色,即蓝色。并且工作。但使用阵列根本没有。

所以最后,我想我的股利为随机颜色我的阵列的每一次我开始在网页

+4

又有什么问题到底是什么? –

回答

4

您的代码已经工作。你只是搞砸了一些报价。您的JS正确的HTML将看起来像:

<body onload="start()"> 
    <div id="sq"></div> 
</body> 

更优的方法是调用在JavaScript本身addEventListener在事件DOMContentLoadedhere are more informations)。在这种情况下,HTML和JS被正确分开。

var color = ["red", "blue", "yellow", "green"]; 
 

 
// dom ready 
 
document.addEventListener("DOMContentLoaded", function (event) { 
 
    start() 
 
}); 
 

 
function start() { 
 
    document.getElementById("sq").style.backgroundColor = color[Math.floor(Math.random() * color.length)]; 
 
}
#sq { 
 
    margin: 5px; 
 
    border: 1px solid black; 
 
    width: 50px; 
 
    height: 50px; 
 
}
<div id="sq"></div>