mirror of
https://github.com/byReqz/matrix-bg.git
synced 2024-11-23 14:34:55 +00:00
47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
window.addEventListener('load', eventWindowLoaded, false);
|
|
|
|
function eventWindowLoaded () {
|
|
canvasApp();
|
|
}
|
|
function canvasSupport (e) {
|
|
|
|
return !!e.getContext;
|
|
|
|
}
|
|
function canvasApp () {
|
|
var canvas = document.getElementById('myCanvas');
|
|
|
|
if (!canvasSupport(myCanvas)) {
|
|
return;
|
|
}
|
|
|
|
var ctx = canvas.getContext('2d');
|
|
var w = canvas.width = window.innerWidth;
|
|
var h = canvas.height = window.innerHeight;
|
|
var yPositions = Array(300).join(0).split('');
|
|
|
|
function runMatrix() {
|
|
if (typeof Game_Interval != 'undefined') clearInterval(Game_interval);
|
|
Game_Interval = setInterval(drawScreen, 33);
|
|
}
|
|
|
|
function drawScreen () {
|
|
ctx.fillStyle = 'rgba(0,0,0,.05)';
|
|
ctx.fillRect(0, 0, w, h);
|
|
ctx.fillStyle = '#0f0';
|
|
ctx.font = '10px Nasalization';
|
|
yPositions.map(function(y, index){
|
|
text = String.fromCharCode(1e2 + Math.random() * 33);
|
|
x = (index * 10) + 10;
|
|
ctx.fillText(text, x, y);
|
|
if (y > 100 + Math.random() * 1e4) {
|
|
yPositions[index] = 0;
|
|
} else {
|
|
yPositions[index] = y + 10;
|
|
}
|
|
})
|
|
}
|
|
|
|
runMatrix();
|
|
|
|
} |