2015-05-04 117 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>