As usual.
The idea is to take a user-submitted hex color code, split it into its R, G, and B parts, and then display them. What's wrong with this picture?
HTML Code:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Color Splitter</title> <script type="text/javascript"> function splitColors() { var input = document.getElementById('input').value; var array = input.split(""); var result = array; if (array[0] == "#") { result = array.splice(0,1); } var ah = array.length; if (ah == 3) { var v1 = result[0]; var v2 = result[1]; var v3 = result[2]; result = [v1,v1,v2,v2,v3,v3]; } if (ah == 0) { result = [0,0,0,0,0,0]; if (ah == 1) { var old = result[0]; result = [old,old,old,old,old,old]; } if (ah == 2) { var v1 = result[0]; var v2 = result[1]; result = [v1,v2,v1,v2,v1,v2]; } if (ah == 4) { var v1 = result[0]; var v2 = result[1]; var v3 = result[2]; var v4 = result[3]; result = [v1,v2,v3,v4,v1,v2]; } if (ah == 5) { var v1 = result[0]; var v2 = result[1]; var v3 = result[2]; var v4 = result[3]; var v5 = result[4]; result = [v1,v2,v3,v4,v5,v1]; } if (ah == 7) { var old = result; result = old.splice(6,1); //No pun intended } if (result[0] != "0" || result[0] != "1" || result[0] != "2" || result[0] != "3" || result[0] != "4" || result[0] != "5" || result[0] != "6" || result[0] != "7" || result[0] != "8" || result[0] != "9" || result[0] != "A" || result[0] != "B" || result[0] != "C" || result[0] != "D" || result[0] != "E" || result[0] != "F" || result[0] != "a" || result[0] != "b" || result[0] != "c" || result[0] != "d" || result[0] != "e" || result[0] != "f") { result[0] = 'F'; } if (result[1] != "0" || result[1] != "1" || result[1] != "2" || result[1] != "3" || result[1] != "4" || result[1] != "5" || result[1] != "6" || result[1] != "7" || result[1] != "8" || result[1] != "9" || result[1] != "A" || result[1] != "B" || result[1] != "C" || result[1] != "D" || result[1] != "E" || result[1] != "F" || result[1] != "a" || result[1] != "b" || result[1] != "c" || result[1] != "d" || result[1] != "e" || result[1] != "f") { result[1] = 'F'; } if (result[2] != "0" || result[2] != "1" || result[2] != "2" || result[2] != "3" || result[2] != "4" || result[2] != "5" || result[2] != "6" || result[2] != "7" || result[2] != "8" || result[2] != "9" || result[2] != "A" || result[2] != "B" || result[2] != "C" || result[2] != "D" || result[2] != "E" || result[2] != "F" || result[2] != "a" || result[2] != "b" || result[2] != "c" || result[2] != "d" || result[2] != "e" || result[2] != "f") { result[2] = 'F'; } if (result[3] != "0" || result[3] != "1" || result[3] != "2" || result[3] != "3" || result[3] != "4" || result[3] != "5" || result[3] != "6" || result[3] != "7" || result[3] != "8" || result[3] != "9" || result[3] != "A" || result[3] != "B" || result[3] != "C" || result[3] != "D" || result[3] != "E" || result[3] != "F" || result[3] != "a" || result[3] != "b" || result[3] != "c" || result[3] != "d" || result[3] != "e" || result[3] != "f") { result[3] = 'F'; } if (result[4] != "0" || result[4] != "1" || result[4] != "2" || result[4] != "3" || result[4] != "4" || result[4] != "5" || result[4] != "6" || result[4] != "7" || result[4] != "8" || result[4] != "9" || result[4] != "A" || result[4] != "B" || result[4] != "C" || result[4] != "D" || result[4] != "E" || result[4] != "F" || result[4] != "a" || result[4] != "b" || result[4] != "c" || result[4] != "d" || result[4] != "e" || result[4] != "f") { result[4] = 'F'; } if (result[5] != "0" || result[5] != "1" || result[5] != "2" || result[5] != "3" || result[5] != "4" || result[5] != "5" || result[5] != "6" || result[5] != "7" || result[5] != "8" || result[5] != "9" || result[5] != "A" || result[5] != "B" || result[5] != "C" || result[5] != "D" || result[5] != "E" || result[5] != "F" || result[5] != "a" || result[5] != "b" || result[5] != "c" || result[5] != "d" || result[5] != "e" || result[5] != "f") { result[5] = 'F'; } var red = result[0] + "" + result[1]; var green = result[2] + "" + result[3]; var blue = result[4] + "" + result[5]; var full = red + "" + green + "" + blue; var newHTML = '<span style="background-color: #' + full + ';">' + full + '</span><br>is made of<br><span style="background-color: #' + red + '0000;">' + red + '0000</span><br><span style="background-color: #00' + green + '00;">00' + green + '00</span><br><span style="background-color: #0000' + blue + ';">0000' + blue + '</span>'; document.getElementById('output').innerHTML = newHTML; } </script> </head> <body> <input name="input" type="text" id="input" size="12" maxlength="7"> <input type="button" name="button" id="button" value="Split" onClick="splitColors()"> <div id="output">Your splitted color will be here.</div> </body> </html>



Reply With Quote


Bookmarks