簡單JS打造酷炫代碼雨(黑客高逼格)
電影黑客帝國有個(gè)代碼雨效果,滿滿的既視感,身為程序猿的你羨慕嗎?只要很簡單的HTML+JavaScript就能實(shí)現(xiàn),甚至不需要懂任何技術(shù)。這篇文章主要介紹了簡單JS打造酷炫代碼雨(黑客高逼格),需要的朋友可以參考下

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>流星雨</title>
<meta name="keywords" content="關(guān)鍵詞,關(guān)鍵字">
<meta name="description" content="描述信息">
<style>
body {
margin: 0;
overflow: hidden;
}
</style>
</head>
<body>
<!--
<canvas>畫布 畫板 畫畫的本子
-->
<canvas width=400 height=400 style="background:#000000;" id="canvas"></canvas>
<script>
//獲取畫板
//doccument 當(dāng)前文檔
//getElement 獲取一個(gè)標(biāo)簽
//ById 通過Id名稱的方式
//var 聲明一片空間
//var canvas 聲明一片空間的名字叫做canvas
var canvas = document.getElementById("canvas");
//獲取畫板權(quán)限 上下文
var ctx = canvas.getContext("2d");
//讓畫板的大小等于屏幕的大小
/*
思路:
1.獲取屏幕對象
2.獲取屏幕的尺寸
3.屏幕的尺寸賦值給畫板
*/
//獲取屏幕對象
var s = window.screen;
//獲取屏幕的寬度和高度
var w = s.width;
var h = s.height;
//設(shè)置畫板的大小
canvas.width = w;
canvas.height = h;
//設(shè)置文字大小
var fontSize = 14;
//計(jì)算一行有多少個(gè)文字 取整數(shù) 向下取整
var clos = Math.floor(w/fontSize);
//思考每一個(gè)字的坐標(biāo)
//創(chuàng)建數(shù)組把clos 個(gè) 0 (y坐標(biāo)存儲起來)
var drops = [];
var str = "qwertyuiopasdfghjklzxcvbnm";
//往數(shù)組里面添加 clos 個(gè) 0
for(var i = 0;i<clos;i++) {
drops.push(0);
}
//繪制文字
function drawString() {
//給矩形設(shè)置填充色
ctx.fillStyle="rgba(0,0,0,0.05)"
//繪制一個(gè)矩形
ctx.fillRect(0,0,w,h);
//添加文字樣式
ctx.font = "600 "+fontSize+"px 微軟雅黑";
//設(shè)置文字顏色
ctx.fillStyle = "#00ff00";
for(var i = 0;i<clos;i++) {
//x坐標(biāo)
var x = i*fontSize;
//y坐標(biāo)
var y = drops[i]*fontSize;
//設(shè)置繪制文字
ctx.fillText(str[Math.floor(Math.random()*str.length)],x,y);
if(y>h&&Math.random()>0.99){
drops[i] = 0;
}
drops[i]++;
}
}
//定義一個(gè)定時(shí)器,每隔30毫秒執(zhí)行一次
setInterval(drawString,30);
</script>
</body>
</html>到此這篇關(guān)于簡單JS打造酷炫代碼雨(黑客高逼格)的文章就介紹到這了,更多相關(guān)JS代碼雨內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Web網(wǎng)頁對話框可拖動、關(guān)閉(自動)文字循環(huán)變化
由Js實(shí)現(xiàn)的網(wǎng)頁WEB對話框,鼠標(biāo)可隨意拖動改變位置,類似于有些軟件初次運(yùn)行時(shí)候彈出的每日提示,里面有文字在循環(huán)變化,時(shí)間到自動關(guān)閉,多么強(qiáng)大的一個(gè)web對話框啊,有興趣的朋友可以參考下啊2012-12-12
自己寫的兼容ie和ff的在線文本編輯器類似ewebeditor
最近寫了個(gè)在線的編輯器,類似ewebeditor那樣的,當(dāng)然沒有人家那么強(qiáng)大,但是基本功能都有,而且還是兼容ie和ff的,需要的朋友可以參考下2012-12-12
一款雙向無縫+按鈕定位的焦點(diǎn)圖實(shí)現(xiàn)代碼
做這個(gè)焦點(diǎn)圖弄了大個(gè)晚上,感覺挺暈的~發(fā)上來給大家踩一下吧 雙向無縫的原理很簡單實(shí)現(xiàn)起來也不難,主要頭痛的是在前后無縫與按鈕定位之間的配合問題,不過還好現(xiàn)在總算OK了。2010-11-11
百度手寫板代碼JavaScript遠(yuǎn)程調(diào)用的實(shí)現(xiàn)(鼠標(biāo)輸入法)
百度手寫板代碼JavaScript遠(yuǎn)程調(diào)用的實(shí)現(xiàn),其實(shí)沒什么可參考的,引用百度的Js文件,如果大家想使用這個(gè)類的話,自己下載就行了,正好可參考一下本演示,幫你快速入題。2010-09-09
iphone手機(jī)桌面滑動效果使用css3實(shí)現(xiàn)
iphone手機(jī)桌面效果,因?yàn)橛昧薱ss3樣式,只測試了谷歌瀏覽器,此效果比較不錯(cuò),有興趣的朋友可以多測試幾個(gè)瀏覽器2012-12-12
網(wǎng)頁計(jì)算器 一個(gè)JS計(jì)算器
一個(gè)挺小的JavaScript網(wǎng)頁計(jì)算器,界面美化的我想還是不錯(cuò)的,畢竟在沒有使用任何圖片修飾的情況下,很好看,而且功能挺實(shí)用,可以完成基本的數(shù)學(xué)算數(shù)運(yùn)算2013-09-09
javascript實(shí)現(xiàn)div的拖動并調(diào)整大小類似qq空間個(gè)性編輯模塊
qq空間的個(gè)性編輯模塊可以隨意的拖動頁面上的元素并且調(diào)動大小實(shí)現(xiàn)動態(tài)布局;這種效果的確很酷,那么我們也來實(shí)現(xiàn)一個(gè)吧2012-12-12

