forked from gilmtz/Rainbow-Code
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrainbow.js
More file actions
39 lines (36 loc) · 1.02 KB
/
Copy pathrainbow.js
File metadata and controls
39 lines (36 loc) · 1.02 KB
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
34
35
36
37
38
39
var linkCount=0;
function changeColorOfLinks(color){
var links=document.getElementsByTagName("a");
links[linkCount].style.color = color;
linkCount++;
if(linkCount>=links.length){
linkCount=0;
}
// for(var i=0;i<links.length;i++){
// links[i].style.color = color;
// }
}
function RGB2Color(r,g,b)
{
return '#' + byte2Hex(r) + byte2Hex(g) + byte2Hex(b);
}
function byte2Hex(n)
{
var nybHexString = "0123456789ABCDEF";
return String(nybHexString.substr((n >> 4) & 0x0F,1)) + nybHexString.substr(n & 0x0F,1);
}
var frequency = .3;
var i=0;
function colorShift(){
var red = Math.sin(frequency*i + 0) * 127 + 128;
var green = Math.sin(frequency*i + 2) * 127 + 128;
var blue = Math.sin(frequency*i + 4) * 127 + 128;
++i;
if(i>=1000000){
i=0;
}
changeColorOfLinks(RGB2Color(red,green,blue));
// document.write( '<font color="' + RGB2Color(red,green,blue) + '">█</font>');
}
setInterval(function(){colorShift();}, 5);
setInterval(function(){colorShift();}, 200);