html5漂亮的雪花

代码来源于潭州免费java视频教程<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
    <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>雪花</title>
  <style type="text/css">
    *{margin:0;padding:0;}
    body{overflow:hidden;background:url("snow2.jpg")no-repeat;background-size:cover;}
  </style>
 </head>
 <body>
    <canvas id="canvas"></canvas>
    <script type="text/javascript">
    //取得画板
    var canvas=document.getElementById("canvas");
    var ctx=canvas.getContext("2d");
    //ctx.beginPath();
    //ctx.lineWidth=1;//线条粗细
    //ctx.strokeStyle="red";//线条颜色
    //ctx.arc(100,100,30,0,Math.PI*2);//ctx.arc(x,y,r,startangle,endangle);
    //ctx.stroke();
    var screen=window.screen;//取得窗口屏幕
    var w=screen.width;
    var h=screen.height;
    canvas.width=w;
    canvas.height=h;
    var numberofsnow=200;//雪球个数
    var snow=[];
    for(var i=0;i<numberofsnow;i++){
        snow.push({
            x:Math.random()*w,
            y:Math.random()*h,
            r:Math.random()*5
        })
    }
    function draw(){
        ctx.shadowColor="#fff";//阴影颜色,白色让雪球发光
        ctx.shadowBlur=10;//阴影模糊级数,越高越模糊
        ctx.clearRect(0,0,w,h);//清除画布
        ctx.fillStyle="#fff";//randomColor();//填充色
        ctx.strokeStyle="rgba(255,255,255,0.5)";//线条颜色,0.5是alpha透明度
        ctx.beginPath();
        for(var i=0;i<numberofsnow;i++){
            var p=snow[i];
            ctx.moveTo(p.x,p.y);
            ctx.arc(p.x,p.y,p.r,0,Math.PI*2);
        }
        ctx.fill();
        ctx.stroke();
        update();
    }
    draw();
    function update(){
        for(var i=0;i<numberofsnow;i++){
            var p=snow[i];
            p.y+=Math.random()*10;
            if (p.y>h){
                p.y=0;
            }
        }
    }
    setInterval(draw,100);
    function randomColor(){//雪花动态变色
        var r=Math.floor(Math.random()*256);
        var g=Math.floor(Math.random()*256);
        var b=Math.floor(Math.random()*256);
        var rgb="rgb("+r+","+g+","+b+")";
        return rgb;
    }

    </script>
 </body>
</html>

时间: 2024-10-12 13:43:46

html5漂亮的雪花的相关文章

HTML5 canvas绘制雪花飘落动画(需求分析、知识点、程序编写分布详解)

看到网上很多展示html5雪花飞动的效果,确实非常引人入胜,我相信大家也跟我一样看着心动的同时,也很好奇,想研究下代码如何实现:虽然哦很多地方也能下载这些源码,不过也不知道别人制作此类动画时的思路及难点分析. 我这几天刚好学习了一下,也趁着此刻有时间从需求分析.知识点.程序编写一步步给大家解剖下,要是在各位关公面前耍大刀了,可别见笑哟. 最终效果图如下: 图1 一.需求分析 1.圆形雪花 本示例中雪花形状使用圆形 2.雪花数量固定 根据图1仔细观察白色雪花数量,飘落过程中,整张图的雪花数量应该是

HTML5漂亮实用的电子书

效果体验:http://hovertree.com/texiao/html5/2.htm 点击这里下载 支持多种系统Mac,PC,Android,iPhone,iPad和Windows Phone 支持多种浏览器:IE,Chrome,火狐,Opera,Safari和UC浏览器. web前端汇总:http://www.cnblogs.com/jihua/p/webfront.html

今天大雪 看雪花飘落HTML5特效

今天大雪,弄一个下雪的特效.html5飘落的雪花堆积动画特效 查看效果:http://hovertree.com/texiao/js/snow.htm 以下是完整源代码,保存到HTML文件也可以看效果: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title&

华丽的HTML5/jQuery动画和应用 前端必备

在网页应用中,我们经常会使用jQuery来实现一些简单的动画效果,比如菜单下拉时的渐变特效,图片滑动时的淡入淡出效果等.现在我们将jQuery和HTML5互相结合,让HTML5/CSS3强大的页面渲染引擎和jQuery简单易用的框架融合在一起,发挥前端迷人的效果. 1.jQuery 360度图片旋转插件DopelessRotate DopelessRotate是一款基于jQuery的图片旋转插件,这款图片旋转插件功能非常强大,它不仅可以在加载的时候显示进度条,而且点击右侧的放大镜按钮可以查看原始

后台模版第二季,真正好用漂亮,HTML5+CSS3搭建,下载即用,无需二次编写。

原文:后台模版第二季,真正好用漂亮,HTML5+CSS3搭建,下载即用,无需二次编写. 源代码下载地址:http://www.zuidaima.com/share/1605673798175744.htm 版权声明:本文为博主原创文章,未经博主允许不得转载.

~~圣诞节到啦, canvas雪花效果, 漂亮到简直没天理啊~~

看到coding的主界面有雪花, 原来,哇,  真漂亮, 一看源代码, 哦了个去, angular写的, 压力好大, 分析分析分析分析.... 然后就写成jQ插件的样子给大家用了. 在线预览的页面是: http://1.keepu.sinaapp.com/snow/snow.html Github的代码地址是: http://sqqihao.github.io/nice-Snowing ; 上图了 后面把angular拿掉了,直接引用jQuery就好了,其实不用jQuery也行的哇, 兼容没弄哇

CSS3/HTML5实现漂亮的分步骤注册登录表单

分步骤的登录注册表单现在也比较多,主要是能提高用户体验,用户可以有选择性的填写相应的表单信息,不至于让用户看到一堆表单望而却步.今天和大家分享的就是一款基于HTML5和CSS3的分步骤注册登录表单,外观不用说,非常漂亮.你看一下DEMO就知道了. 这里是在线演示,你可以先看看效果. 接下来我们要来一起看看实现的过程是怎样的.代码有点复杂,主要由HTML代码.CSS3代码以及Javascript代码组成. HTML代码: <form id="msform"> <!--

HTML5和css3 实现雪花飘动和translate的练习

看了看HTML5和css3   练习他的动画和位移  记录一下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>h5+css3实现雪花纷飞 以及 动画下拉</title> </head> <style> *{ padding: 0; margin: 0; } /*?*/ heade

HTML5实战教程———开发一个简单漂亮的登录页面

最近看过几个基于HTML5开发的移动一样,已经越来越流畅了,相信随着职能手机的配置越来越高性能越来越好,HTML5技术的使用在移动端应用的会越来越普及,应用越来越广泛,因此作为移动开发者,掌握这门技术自然有着强烈的紧迫感.今天就写一个小小的登录页面的demo,巩固最近的学习,也给有兴趣的朋友学习HTML5技术做个参考. 在这里您可以下载到我最后实现的登录页面的demo源码,地址:http://pan.baidu.com/s/1kU1I50b. 准备工作 1.webStorm或者其他网页开发工具.