<html>

<head>

<title>星空</title>

<META http-equiv="X-UA-Compatible" content="IE=edge"></META>

<META http-equiv="Content-Type" content="text/html; charset=gb2312"/>

<script>

var BW = 800; //canvas width

var BH = 600; //canvas height

var MAX_STAR_SIZE = 3;

var MAX_STAR_SPEED = 1;

var STAR_COUNT = 120;

var BGCOLOR = "black";

var ctx;

var stars = [];



function rndf(n){

return Math.floor(Math.random()*n);

}



function rndc(n){

return Math.ceil(Math.random()*n);

}



function Star(){

this.reset = function(){

this.x = 0;

this.y = rndf(BH);

this.size = rndc(MAX_STAR_SIZE);

this.vx = MAX_STAR_SPEED*this.size/MAX_STAR_SIZE;

this.vy = 0;

this.color = "rgba("+rndf(255)+", "+rndf(255)+", "+rndf(255)+", 0.5)";

};



this.reset();

this.x = rndf(BW);

}

function render(){

ctx.globalCompositeOperation = "source-over";

ctx.fillStyle = "rgba(0, 0, 0, 0.3)";

ctx.fillRect(0, 0, BW, BH);

ctx.globalCompositeOperation = "lighter";

for(var i = 0; i < STAR_COUNT; ++i){

var p = stars[i];

ctx.beginPath();

var gradient = ctx.createRadialGradient(p.x, p.y, 0, p.x, p.y, p.size);

gradient.addColorStop(0, "white");

gradient.addColorStop(0.4, "white");

gradient.addColorStop(0.4, p.color);

gradient.addColorStop(1, "black");

ctx.fillStyle = gradient;

ctx.arc(p.x, p.y, p.size, Math.PI*2, false);

ctx.fill();

p.x += p.vx;

p.y += p.vy;



if(p.x<=0 || p.x>=BW || p.y<=0 || p.y>=BH){

p.reset();

}

}

}

function init(){

if (!window.console){

console = {log:function(){},debug:function(){}};

}

//create canvas

var cv = document.createElement('canvas');

cv.width = BW;

cv.height = BH;

cv.style.background = BGCOLOR;

document.body.appendChild(cv);

ctx = cv.getContext("2d");

//create all stars

for(var i=0;i<STAR_COUNT;++i){

var s = new Star();

stars.push(s);

}

setInterval(render, 33);

};

</script>

</head>

<body onload="init()">

<div><A href="http://www.999jiujiu.com/">http://www.999jiujiu.com/</A></div>

</body>

</html>

HTML5梦幻星空,可用作网页背景的更多相关文章

  1. 15款免费的 HTML5/CSS3 响应式网页模板

    如果你想快速制作出一个优秀的网站,网站模板一定是必不可少的.网页设计师和开发人员也可以从网站模板入手,学习先进的布局方式和编码风格.下面这个列表为大家挑选了15款免费的 HTML5/CSS3 响应式网 ...

  2. html5 canvas首屏自适应背景动画循环效果代码

    模板描述:html5 canvas首屏自适应背景动画循环效果代码 由于动态图太大,怕以后服务器受不了,所以现在都改为静态图了,大家点击演示地址一样的,希望大家喜欢,你们的支持就是小海的动力!! 欢迎大 ...

  3. 借助Html制作渐变的网页背景颜色

    借助Html制作渐变的网页背景颜色 <html> <head> <title>制作渐变背景</title> <meta http-equiv=&q ...

  4. 【HTML5+MVC4】xhEditor网页编辑器图片上传

    准备工作: 创建一个MVC项目中,添加好xhEditor插件 相关用法:http://www.cnblogs.com/xcsn/p/4701497.html 注意事项:xhEditor分为v1.1.1 ...

  5. 【CSS】css网页背景图片设置

    刚学CSS,了解了下网页背景图设置,顺便记录下. 下面主要是实现背景图位置保持不变,即不随滚动条动而动的功能. body { background-image:url(images/bck.png); ...

  6. 基于html5实现的愤怒的小鸟网页游戏

    之前给大家分享一款基于html5 canvas和js实现的水果忍者网页版,今天给大家分享一款基于html5实现的愤怒的小鸟网页游戏.这款游戏适用浏览器:360.FireFox.Chrome.Safar ...

  7. 用CSS让网页背景图片居中的方法

    网页背景居中的方法有很多种的.这里介绍一些用CSS让背景图片居中的方法. 让背景图片居中的第一个方法是用像素设定,很多都用这种,但是也是最麻烦的: <div style="width: ...

  8. JavaScript实现网页背景自动变色

    JavaScript实现网页背景自动变色,自己变换颜色,设定时间和颜色值即可,在你设定的颜色值.一定时间内自动切换网页背景颜色. <!DOCTYPE HTML PUBLIC "-//W ...

  9. CROW-5 WEB APP引擎商业计划书(HTML5方向)-微信网页版微信公众平台登录-水仙谷

    CROW-5 WEB APP引擎商业计划书(HTML5方向)-微信网页版微信公众平台登录-水仙谷 CROW-5 WEB APP引擎商业计划书(HTML5方向)

随机推荐

  1. 22.IntelliJ IDEA 切换 project

    转自:https://blog.csdn.net/qwdafedv/article/details/73838628?utm_source=blogxgwz0 1.file->open 2.选择 ...

  2. Redis封装之List

    /// <summary> /// Redis list的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销, /// Redis内部的很多实现,包括发 ...

  3. IOC DI 专题

    IoC:Inversion of Control,控制反转DI:Dependency Injection,依赖注入 要理解上面两个概念,就必须搞清楚如下的问题: 参与者都有谁?依赖:谁依赖于谁?为什么 ...

  4. mvc下是如何传值的

    最近在开发一个项目,用的是mvc框架,现将mvc会用到的常用传值方法总结如下: 在讲传递参数方法之前,先简单介绍一下MVC路由及运行机制.     首先,Web 浏览器向服务器发送一条URL 请求,如 ...

  5. CentOS6.x操作系统自带的 DM Multipath(DMMP)多路径软件配置说明。

    CentOS系统下的多路径软件是操作系统自带的 DM Multipath(DMMP)工具.------------------------------------------------------- ...

  6. oracle基础入门(二)

    一:Oracle和plsql都安装成功 我们现在要链接自己本机Oracle 或者 远程服务器的Oracle 所有我们要找到tnsnames.ora 找到PLsql的 db_1我的地址F:oracle\ ...

  7. @MapperScan 和 @ComponentScan 区别

    1.首先@MapperScan和@ComponentScan都是扫描包 2.@ComponentScan是组件扫描注解,用来扫描@Controller  @Service  @Repository这类 ...

  8. UVALive 6869 Repeated Substrings

    Repeated Substrings Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu Descri ...

  9. SQL char字段类型排序

    我是做的ACCESS时候需要对字段的值进行排序,字段格式是char类型的,但是存的值是数字.现在需要对该字段进行排序. 通过查找,找到以下两种方法,记录下来. 1. 你可以转换成int型再排序 sel ...

  10. android ActionBar的使用

    Action Bar主要功能包括:   1. 显示选项菜单   2. 提供标签页的切换方式的导航功能,能够切换多个fragment.    3.  提供下拉的导航条目.   4. 提供交互式活动视图取 ...