js+canvas實(shí)現(xiàn)代碼雨效果
本文實(shí)例為大家分享了js+canvas代碼雨效果的具體代碼,供大家參考,具體內(nèi)容如下

代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
*{
margin: 0px;
padding: 0px;
}
html,body{
height: 100%;
width: 100%;
}
#canvas{
display: block;
}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<script type="text/javascript">
var canvas = document.getElementById('canvas')
var c= canvas.getContext('2d')
var cw = canvas.width = window.innerWidth
var ch = canvas.height = window.innerHeight
var str = [1,2,3,4,5,6,7,8,9,0,'q','w','e','r','t','y','u','i','a','c','d','f','g','h','j','l']
var init = function(){
this.x = Math.random()*cw
this.y = 0
this.content1 =Math.random()*15
this.speed = Math.random()*5+20
this.add = function(){
this.y+=this.speed
}
this.reset1 = function(){
this.x= Math.random()*cw
this.y = 0
}
}
//定義一個(gè)隨機(jī)色
var gl = c.createLinearGradient(0, 0, cw, ch);
gl.addColorStop(0, 'red');
gl.addColorStop(.5, 'yellow');
gl.addColorStop(1, 'cyan');
var arr=[]
for(var i=0;i<20;i++){
arr.push(new init())
}
setInterval(function(){
c.fillStyle = 'rgba(0,0,0,0.05)'
c.fillRect(0,0,cw,ch)
//上面的兩句是給一個(gè)背景,放在計(jì)時(shí)器里面是為了每運(yùn)行一次,就重新繪畫(huà)一次
//用來(lái)清空好畫(huà)布
//1,yong rgba()來(lái)表示顏色是為了給一個(gè)透明度,新畫(huà)上去的畫(huà)布沒(méi)有完全覆蓋
//以前的畫(huà)布,所以有個(gè)漸變的效果
for(var i=0;i<arr.length;i++){
c.fillStyle = gl
c.font = '30px 微軟雅黑'
c.fillText(str[i],arr[i].x,arr[i].y)
//讓他落到底部再回來(lái)
if(arr[i].y>ch-20){
arr[i].reset1()
}
arr[i].add()
}
//
},1000/60)
</script>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- js+css實(shí)現(xiàn)紅包雨效果
- HTML+JS實(shí)現(xiàn)“代碼雨”效果源碼(黑客帝國(guó)文字下落效果)
- canvas+gif.js打造自己的數(shù)字雨頭像的示例代碼
- JS+CSS+HTML實(shí)現(xiàn)“代碼雨”類似黑客帝國(guó)文字下落效果
- JS實(shí)現(xiàn)代碼雨特效
- JavaScript canvas實(shí)現(xiàn)代碼雨效果
- JavaScript實(shí)現(xiàn)代碼雨效果
- 基于JS實(shí)現(xiàn)漫畫(huà)中大雨滂沱的效果
- 利用JS打造黑客代碼雨效果
- JavaScript實(shí)現(xiàn)字符雨效果
相關(guān)文章
JS實(shí)現(xiàn)的樣式切換功能tableCSS實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)的樣式切換功能tableCSS,結(jié)合實(shí)例形式分析了js頁(yè)面元素遍歷與樣式動(dòng)態(tài)操作相關(guān)技巧,需要的朋友可以參考下2016-12-12
Echarts中的clear()和dispose()用法實(shí)例
這篇文章主要給大家介紹了關(guān)于Echarts中clear()和dispose()用法的相關(guān)資料,clear和dispose是echarts提供的用于解決內(nèi)存溢出的方法 ,文中介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10
基于JavaScript實(shí)現(xiàn)鼠標(biāo)懸浮彈出跟隨鼠標(biāo)移動(dòng)的帶箭頭的信息層
這篇文章主要介紹了基于JavaScript實(shí)現(xiàn)鼠標(biāo)懸浮彈出跟隨鼠標(biāo)移動(dòng)的帶箭頭的信息層 的相關(guān)資料,需要的朋友可以參考下2016-01-01
JavaScript箭頭函數(shù)的五種使用方法及三點(diǎn)注意事項(xiàng)
這篇文章主要介紹了JavaScript箭頭函數(shù)的五種使用方法及三點(diǎn)注意事項(xiàng),箭頭函數(shù)是ES6新增的定義函數(shù)的方式,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,需要的朋友可以參考一下2022-08-08
關(guān)于頁(yè)面嵌入swf覆蓋div層的問(wèn)題的解決方法
JavaScript創(chuàng)建對(duì)象方法實(shí)例小結(jié)

