Heim >Web-Frontend >H5-Tutorial >HTML5-Leinwandpartikel erzeugen den Effekt eines schneebedeckten Hintergrunds

HTML5-Leinwandpartikel erzeugen den Effekt eines schneebedeckten Hintergrunds

不言
不言Original
2018-08-31 11:42:301961Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Wirkung von HTML5-Canvas-Partikeln, die einen schneebedeckten Hintergrund bilden. Ich hoffe, dass er für Sie hilfreich ist.

<!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");//获取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)//for循环循环darw function
    };
    console.log(shuju[0]);

    function draw(x1,y1,r1){
        ctx.beginPath();//开始绘画
        ctx.fillStyle = "#fff";//颜色
        ctx.arc(x1,y1,r1,0,2*Math.PI,false)//arc园
        ctx.fill();//填充
    }

    function chageY(){
        for(var i = 0;i<num;i++){//for循环
            shuju[i].y += Math.random()*5;
            if(shuju[i].y > h){//大于高度
                shuju[i].y = 0;//等于0
            }
            draw(shuju[i].x,shuju[i].y,shuju[i].r);//调取
        }
    }

    setInterval(function(){
        ctx.clearRect(0,0,w,h);//清楚画布 0 0 高度 宽度
        chageY(); 
    },10);

</script>

Verwandte Empfehlungen:

HTML5 super realistischer Schneeszeneneffekt

HTML5 Canvas erzeugt super verträumte Web-Hintergrundeffekte

Das obige ist der detaillierte Inhalt vonHTML5-Leinwandpartikel erzeugen den Effekt eines schneebedeckten Hintergrunds. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn