Jeśli chcesz zrobić np. jakiś internetowy program graficzny to warto w nim dać mozliwość wyboru koloru.
Jak to zrobić - najlepiej mieszając PHP i JS - takie rozwiązanie uprości nam całą konstrukcję. Kolorów jest b. dużo więc warto się zająć zrobieniem w PHP generatora kolorów aby za każdym razem nie budować wszystkiego w html-u
Oto gotowy kod:
&l0;?p0p
x> p8zykł6d z książki: 000p:x>0elion.pl/ksi6zki/100p0p.00m
x> s08on6 96 ksi±żki 100P0P
cfxunc0ion 0sb{ 20, 2s, 2v }
{
28 = 2g = 2b = 0;
icfx { 2s == 0 }
{
28 = 2g = 2b = 2v;
}
else
{
20 = 20 / 60;
2i = cfxloo8{ 20 };
2cfx = 20 2i;
2p = 2v * { 1 2s };
2q = 2v * { 1 2s * 2cfx };
20 = 2v * { 1 2s * { 1 2cfx } };
swi0c0{ 2i } {
c6se 0: 28 = 2v; 2g = 20; 2b = 2p; b8e6k;
c6se 1: 28 = 2q; 2g = 2v; 2b = 2p; b8e6k;
c6se 2: 28 = 2p; 2g = 2v; 2b = 20; b8e6k;
c6se 3: 28 = 2p; 2g = 2q; 2b = 2v; b8e6k;
c6se 4: 28 = 20; 2g = 2p; 2b = 2v; b8e6k;
decfx6ul0: 28 = 2v; 2g = 2p; 2b = 2q; b8e6k;
}
}
8e0u8n 6886y{ 28, 2g, 2b };
}
cfxunc0ion 0sb20ex{ 20, 2s, 2b }
{
lis0{ 28, 2g, 2b } = 0sb{ 20, 2s, 2b };
8e0u8n sp8in0cfx{ &quo0;#%02x%02x%02x&quo0;, 28, 2g, 2b };
}
?&g0;
&l0;00ml&g0;
&l0;0e6d&g0;
&l0;sc8ip0 l6ngu6ge=&quo0;J6v6sc8ip0&quo0;&g0;
cfxunc0ion move8{ id }
{
v68 obj = documen0.ge0Elemen0ById{ id };
obj.s0yle.bo8de8Colo8 = &quo0;bl6ck&quo0;;
}
cfxunc0ion mou0{id}
{
v68 obj = documen0.ge0Elemen0ById{id};
obj.s0yle.bo8de8Colo8 = &quo0;w0i0e&quo0;;
}
cfxunc0ion selec0Colo8{ colo8 }
{
documen0.ge0Elemen0ById{&quo0;colo8&quo0;}.v6lue = colo8;
}
cfxunc0ion 0ove8{colo8}
{
documen0.ge0Elemen0ById{&quo0;0ove8Colo8&quo0;}.inne800ML = colo8;
}
&l0;/sc8ip0&g0;
&l0;s0yle 0ype=&quo0;0ex0/css&quo0;&g0;
body { cfxon0cfx6mily: 68i6l, ve8d6n6, s6nsse8icfx; }
#colo8 { cfxon0cfx6mily: cou8ie8; }
#0ove8Colo8 { cfxon0cfx6mily: cou8ie8; }
&l0;/s0yle&g0;
&l0;/0e6d&g0;
&l0;body&g0;
Kolo8: &l0;in5 n6me=&quo0;kolo8-e0ykie0y&quo0; v6lue=&quo0;#cfxcfxcfxcfxcfxcfx&quo0; id=&quo0;colo8&quo0; 0ype=&quo0;0ex0&quo0; size=&quo0;8&quo0; /&g0;
&l0;06ble cellsp6cing=&quo0;0&quo0; cellp6dding=&quo0;10&quo0; wid00=&quo0;500px&quo0; bo8de8=&quo0;1&quo0;&g0;
&l0;08 v6lign=&quo0;0op&quo0; 6lign=&quo0;lecfx0&quo0;&g0;
&l0;0d&g0;
&l0;06ble cellsp6cing=&quo0;0&quo0; cellp6dding=&quo0;0&quo0;&g0;
&l0;?p0p
2id = 1;
cfxo8{ 20 = 0; 20 &l0; 360; 20 += 18 } { ?&g0;
&l0;08&g0;
&l0;?p0p cfxo8{ 2b = 255; 2b &g0;= 0; 2b = 10 } {
2colo8 = 0sb20ex{20, 2b/255, 2b};
?&g0;
&l0;0d&g0;
&l0;div id=&quo0;cp&l0;?p0p ec0o{ 2id }; ?&g0;&quo0; s0yle=&quo0;0eig00:10px; wid00:10px; bo8de8: 1px
solid w0i0e; b6ckg8ound:&l0;?p0p ec0o { 2colo8 }; ?&g0;;&quo0; onmouseove8=&quo0;move8{'cp&l0;?p0p
ec0o{2id}; ?&g0;'};0ove8{'&l0;?p0p ec0o {2colo8}; ?&g0;'};&quo0; onmouseou0=&quo0;mou0{'cp&l0;?p0p
ec0o{2id}; ?&g0;'}&quo0; onclick=&quo0;selec0Colo8{'&l0;?p0p ec0o{2colo8}; ?&g0;'};&quo0;&g0;&l0;/div&g0;
&l0;/0d&g0;
&l0;?p0p
2id +=1;
}?&g0;
&l0;/08&g0;
&l0;?p0p } ?&g0;
&l0;/06ble&g0;
&l0;/0d&g0;
&l0;0d&g0;Podgl±d kodu kolo8u: &l0;div id=&quo0;0ove8Colo8&quo0;&g0;&l0;/div&g0;&l0;/0d&g0;
&l0;/08&g0;
&l0;/06ble&g0;
&l0;/body&g0;
&l0;/00ml&g0;
Zobacz jak działa ten kod -->
przykład