как сделать случайный цвет
есть три числа в пределах от нуля до 255
пусть это - компонеты ргб надо сгенерировать цвет и присвоить его эл-ту интерфейса |
alert('#' + 25..toString(16) + 130..toString(16) + 210..toString(16));
|
Ошибка: XML descendants internal method called on incompatible Number
|
KOLANICH,
я нажимаю кнопку "Запустить" и вижу код цвета. Что запускаете вы, я не знаю. |
function cc(){
var r=Math.floor(Math.random() * (256));
var g=Math.floor(Math.random() * (256));
var b=Math.floor(Math.random() * (256));
var c='#' + r..toString(16) + g..toString(16) + b..toString(16);
m.style.borderColor=c;
}
|
Kolyaj,
Случайный цвет как-то подозрительно всегда один и тот же. |
Цитата:
|
vk65535,
Цитата:
KOLANICH, две точки нужны только для чисел. Для переменных нужна одна. |
~~
Это что вообще такое?:blink: |
B~Vladi, всего-навсего дважды примененное побитовое отрицание :) Рядом где-то тема была.
|
Kolyaj,
Сорь, про случайные это мне и вправду приснилось ) пост#5 сбил с толку. B~Vladi, no comments. |
спасибо, запахало
а можно ли сделать, чтобы связать с классом b xnj,s ghb yfpyfxtybb rkfccf fdnjvfnjv cnfdbkfcm ckexfqyfz cvtyf wdtnf |
Цитата:
|
Кстать может возникнуть ошибка.
alert('#' + 1..toString(16) + 42..toString(16) + 42..toString(16))
Мой вариант:
alert('#' + ((Math.random() * 0x1000000) | 0x1000000).toString(16).substr(1))
|
alert('#' + ((Math.random() * 0x1000000) | 0).toString(16))
|
B@rmaley.e><e,
Я ж говорю, может быть ошибка - в данном случае, если число меньше 0x100000, получим, например, #abcde. А нужно #0abcde :) |
Точно. Недодумал.
|
Не могу удержаться от своего варианта также:
var c='rgb(' + r + ',' + g + ',' + b + ')';
obj.style.color = c;
:) |
Я вообще не большой специалист но когда то писал вот такую функцию
function RandColor() { col = Math.round(255.0*Math.random()); r = col.toString(16); col = Math.round(255.0*Math.random()); g=col.toString(16); col = Math.round(255.0*Math.random()); d=col.toString(16); col=r+g+d; return col; } работает нормально. |
function randomColor(){
var redColor = Math.floor(Math.random()*100) ; var blueColor = Math.floor(Math.random()*100); var yellowColor = Math.floor(Math.random()*100); if(redColor < 256 && blueColor < 256 && yellowColor < 256){ redColor = redColor.toString(16).length <= 1 ? '0' + redColor.toString(16) : redColor.toString(16); blueColor = blueColor.toString(16).length <= 1 ? '0' + blueColor.toString(16) : blueColor.toString(16); yellowColor = yellowColor.toString(16).length <= 1 ? '0' + yellowColor.toString(16) : yellowColor.toString(16); return "#" + redColor + blueColor + yellowColor; } else randomColor(); } |
Эксгумация прошла успешно.
|
| Часовой пояс GMT +3, время: 16:04. |