Сообщение от j0hnik
|
Как вы производительность оцениваете?
|
если повторения не нужны, зачем их генерировать? скрипт будет "ждать" пока rand == rand2 - сервис
https://jsperf.com/
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<div id="id" style="display: block; width: 200px; height: 200px; border: 1px solid grey;"></div>
<script>
function rand(a) {
a = a.slice(0);
var c = a.length - 1;
return function() {
var b = Math.floor(Math.random() * c),
b = a.splice(b, 1)[0];
a.push(b);
return b
}
};
var color = ['red','green','blue','orange','yellow','violet','cyan'];
var r = rand(color);
document.getElementById("id").onmouseover = function(){
this.style.backgroundColor = r();
};
</script>
</body>
</html>