Смена фона с js

147
11 марта 2019, 03:20

Написал код

function randColor() {
var red = Math.round(Math.random()*255);
var blue = Math.round(Math.random()*255);
var green = Math.round(Math.random()*255);
document.getElementById('boby').style.backgroundColor = "rgb+"("+txt+")"";
var txt = (+red+", "+blue+", "+green);
alert("rgb"+"("+txt+")");
}

чтобы менять фон боди по клику. Через alert видно что rgb передает правильный и если вместо того что выдает "rgb+"("+txt+")"" написать то что выдает alert то все заработает, но вот сам код при этом не работает. Кто может подсказать почему?

Answer 1

Все-таки лучше сначала присвоить переменной значение, а уж потом ее использовать.

function randColor() { 
  var red = Math.round(Math.random() * 255); 
  var blue = Math.round(Math.random() * 255); 
  var green = Math.round(Math.random() * 255); 
 
  var txt = (+red + ", " + blue + ", " + green); 
  //alert("rgb"+"("+txt+")"); 
  document.getElementById('boby').style.backgroundColor = "rgb(" + txt + ")"; 
} 
 
setInterval(randColor, 500);
#boby { 
  width:200px; 
  height:100px; 
  border:1px solid black; 
}
<div id="boby"></div> 
<button onclick="randColor()">Click</button>

READ ALSO
Равномерная верстка карточек

Равномерная верстка карточек

Недавно начал верстать и столкнулся с такой проблемойКак сделать без отступов, полей и bootstrap равномерную многострочную верстку карточек...

146
Кастомная форма сектора/div

Кастомная форма сектора/div

На сайте https://wwwpomwonderful

150
Jsoup заменить содержимое тегов html

Jsoup заменить содержимое тегов html

У меня есть такой код html

163