JavaScript Pengacak Warna
Kode Heksa Warna Acak
"#"+((1<<24)*Math.random()|0).toString(16);
Deret Warna Terdaftar
Mendapatkan warna secara acak berdasarkan barisan warna yang sudah terdaftar:
// Deret warna
var colors = ["#345", "#292222", "#990000", "black", "#ffa500", "#fff3db"];
// Mengambil warna secara acak dari array `colors`
// dan memasukkan hasilnya ke dalam variabel `a`
var a = colors[Math.floor(Math.random()*colors.length)];
Pembaharuan
Yang ini sedikit panjang, tapi hasilnya lebih stabil dibandingkan dengan yang pertama, serta bisa menghasilkan urutan warna yang lebih indah. Dalam beberapa kesempatan, Saya melihat kode pengacak warna yang pertama menghasilkan warna yang tidak valid (pengacak warna hanya menggenerasikan lima digit kode saja, bukannya enam digit seperti yang seharusnya):
function getRandomColor() {
var letters = '0123456789ABCDEF'.split(''),
color = '#';
for (var i = 0; i < 6; ++i) {
color += letters[Math.round(Math.random() * 15)];
}
return color;
}
Penggunaan
document.body.style.backgroundColor = getRandomColor();
Referensi: SO - Random Color Generator in JavaScript
Labels: JavaScript, Potongan
17 Comments:
iki opo toh :p*
By Beben Koben, at Monday, November 19, 2012 at 7:01:00 PM GMT+7
apakah ini akan bisa membuat warna background berubah2 secara acak, saat menampilkan sebuah halaman ? :p*
By Unknown, at Tuesday, November 20, 2012 at 5:17:00 PM GMT+7
Bisa. Coba saja taruh kode ini di atas tag </body> lalu simpan:
<script type='text/javascript'>
//<![CDATA[
document.body.style.background = "#"+((1<<24)*Math.random()|0).toString(16);
//]]>
</script>
By Taufik Nurrohman, at Tuesday, November 20, 2012 at 5:40:00 PM GMT+7
wohohoho,, keren nih..
By Unknown, at Wednesday, November 21, 2012 at 5:48:00 PM GMT+7
Wow keren, kalau yg itu kan untuk tag <body> kalau ingin tag <div id> (minsalnya footer) bagaimana agar backgrounnya berubah ubah ?
By Yusril Ibnu Maulana, at Sunday, December 9, 2012 at 11:18:00 AM GMT+7
<div id="footer"> ... </div>
document.getElementById('footer').style.background = "#"+((1<<24)*Math.random()|0).toString(16);
By Taufik Nurrohman, at Monday, December 10, 2012 at 4:09:00 PM GMT+7
Kalo ingin mengubah warna background berdasarkan deretan warna terdaftar gimana ya mas?
By Unknown, at Friday, December 14, 2012 at 6:55:00 PM GMT+7
<script>
var colors = ["#345", "#292222", "#990000", "black", "#ffa500", "#fff3db"];
document.body.style.background = colors[Math.floor(Math.random()*colors.length)];
</script>
Bisa juga untuk latar gambar acak. Tinggal ubah deret-deret warna menjadi URL gambar:
<script>
var bg = [
"#fff url('gambar-1.jpg') repeat",
"#000 url('gambar-2.jpg') repeat",
"#39f url('gambar-3.jpg') repeat"
];
document.body.style.background = bg[Math.floor(Math.random()*bg.length)];
</script>
By Taufik Nurrohman, at Friday, December 14, 2012 at 10:16:00 PM GMT+7
mas ini kan warnanya berubah, tapi teksturnya background yang ada jadi tertutup warna, bisa ga kalo mengubah warna tanpa menghilangkan/ menutup tekstur background yang telah ada?
By Unknown, at Saturday, December 15, 2012 at 9:12:00 AM GMT+7
Jangan memakai properti background, cukup properti backgroundColor saja:
var colors = ["#345", "#292222", "#990000", "black", "#ffa500", "#fff3db"];
document.body.style.backgroundColor = colors[Math.floor(Math.random()*colors.length)];
By Taufik Nurrohman, at Saturday, December 15, 2012 at 9:19:00 AM GMT+7
\o/ \o/ \o/
By Yusril Ibnu Maulana, at Sunday, December 16, 2012 at 11:34:00 AM GMT+7
Hoh, :D Ternyata memang bisa! :D
By budkalon, at Thursday, April 11, 2013 at 5:27:00 PM GMT+7
Kang bisa ngak warna tertentu tidak boleh ada dalam background ini karena misal ini kita gunakan pada header takutnya sama dengan warna color pada title
By Unknown, at Wednesday, July 24, 2013 at 7:32:00 PM GMT+7
Masukkan ke dalam kondisional:
var randomColor = "#"+((1<<24)*Math.random()|0).toString(16);
// Buat pengecualian untuk warna hitam
if (randomColor != "#000000") {
document.getElementById('site-header').style.background = randomColor;
} else {
document.getElementById('site-header').style.background = "#ffffff";
}
By Taufik Nurrohman, at Wednesday, July 24, 2013 at 8:57:00 PM GMT+7
terima kasih mas sudah berhasil....oh ya mas kode kode di atas kan dalam bentuk id (#)bagaimana kalau dalam bentuk class(.) mas misal kita akan merubah tampilan judul sidebar kan biasanya bentuk kode nya kaya gini .sidebar h2{....
By Unknown, at Thursday, July 25, 2013 at 11:17:00 AM GMT+7
document.write('<sty' + 'le>.sidebar h2 {background-color:' + randomColor + '}</sty' + 'le>');
By Taufik Nurrohman, at Thursday, July 25, 2013 at 11:51:00 PM GMT+7
<script type='text/javascript'>
//<![CDATA[
var randomColor = "#"+((1<<24)*Math.random()|0).toString(16);
document.write('<sty' + 'le>.sidebar h2 {background-color:' + randomColor + '}</sty' + 'le>');
//]]>
</script>
By Unknown, at Friday, July 26, 2013 at 2:57:00 PM GMT+7
Post a Comment
<< Home