• 技术文章 >web前端 >H5教程

    html5 canvas粒子形成下雪背景的效果

    不言不言2018-08-31 11:42:30原创1065
    本篇文章给大家带来的内容是关于html5 canvas粒子形成下雪背景的效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    <!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>

    相关推荐:

    HTML5超逼真下雪场景效果

    HTML5 Canvas打造超梦幻网页背景特效

    以上就是html5 canvas粒子形成下雪背景的效果的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:html5 canvas
    上一篇:html5是什么?html5有什么用? 下一篇:什么是canvas离屏技术?canvas放大镜效果如何实现?
    PHP编程就业班

    相关文章推荐

    • Javascript HTML5 Canvas实现的一个画板_javascript技巧• 用canvas 实现个图片三角化(LOW POLY)效果_javascript技巧• HTML5 画布canvas使用方法_html5教程技巧• HTML5 Canvas的常用线条属性值总结_html5教程技巧• HTML5 Canvas基本线条绘制的实例教程_html5教程技巧

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网