<!doctype html>
<html lang=
"en"
>
<head>
<meta charset=
"UTF-8"
/>
<title>canvas粒子形成下雪背景</title>
body{
margin: 0px;
padding: 0px;
}
#canvas{
display: block;
background: #222;
}
</style>
</head>
<body>
<canvas id=
"canvas"
></canvas>
</body>
<script>
var
canvas = document.getElementById(
"canvas"
);
var
ctx = canvas.getContext(
"2d"
);
var
w = canvas.width = window.innerWidth;
var
h = canvas.height = window.innerHeight;
window.onresize =
function
(){
w = canvas.width = window.innerWidth;
h = canvas.height = window.innerHeight;
};
var
num = 1000;
var
shuju = [];
for
(i = 0;i<num;i++){
shuju.push({
x : Math.random()*w,
y : Math.random()*h,
r : Math.random()*2
});
draw(shuju[i].x,shuju[i].y,shuju[i].r)
};
console.log(shuju[0]);
function
draw(x1,y1,r1){
ctx.beginPath();
ctx.fillStyle =
"#fff"
;
ctx.arc(x1,y1,r1,0,2*Math.PI,false)
ctx.fill();
}
function
chageY(){
for
(
var
i = 0;i<num;i++){
shuju[i].y += Math.random()*5;
if
(shuju[i].y > h){
shuju[i].y = 0;
}
draw(shuju[i].x,shuju[i].y,shuju[i].r);
}
}
setInterval(
function
(){
ctx.clearRect(0,0,w,h);
chageY();
},10);
</script>