-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcolor.js
33 lines (32 loc) · 950 Bytes
/
color.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function colorize(){
var text = $('input').val(),
html = '',
i;
for(i=0; i<text.length; i++){
var code, coda, nucleus, onset, red, green, blue;
code = text.charCodeAt(i);
if ( code >= 0xAC00 && code <= 0xD7AF ){
code -= 0xAC00;
coda = code % 28;
code = (code - coda) / 28;
nucleus = code % 21;
onset = (code - nucleus) / 21;
red = Math.floor(255*onset/18);
green = Math.floor(255*nucleus/20);
blue = Math.floor(255*coda/27);
}
else {
red = green = blue = 0;
}
html += '<div class="box" style="background: rgb(' + red + ',' +
green + ',' + blue + ')"> </div>';
}
$('div.result').html(html);
return false;
}
$(function(){
$('button').click(colorize);
$('form').submit(colorize);
colorize();
$('input').focus();
});