HTML5模糊的圆点背景动画特效

Posted 天阁科技

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML5模糊的圆点背景动画特效相关的知识,希望对你有一定的参考价值。

HTML5模糊的圆点背景动画特效本次为大家分享的是一款最近多人使用的纯html代码动画页面源码。

NAME:HTML5模糊的圆点背景动画特效


HTML5模糊的圆点背景动画特效如果你喜欢这代码,可以找小编要下载链接(偷偷告诉你小编早就已经打包好了)

HTML5模糊的圆点背景动画特效小编觉得当做网站背景图肯定很高大尚!HTML5模糊的圆点背景动画特效


HTML5模糊的圆点背景动画特效下面就来欣赏一下效果图吧!



HTML5模糊的圆点背景动画特效

HTML5模糊的圆点背景动画特效


注意!前方高能代码!


<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>背景动画-天阁科技-QQ89081167</title>

<style>

body {

  background: #000;

  overflow: hidden;

}

canvas {

  bottom: 0;

  left: 0;

  position: absolute;

  right: 0;

  top: 0;

}

#c1 {

  opacity: 0;

}

#c2 {

  background: #000;

}

</style>

</head>

<body>

<canvas id="c1"></canvas>

<canvas id="c2"></canvas>

<script>

var c1 = document.getElementById( 'c1' ),

ctx1 = c1.getContext( '2d' ),

c2 = document.getElementById( 'c2' ),

ctx2 = c2.getContext( '2d' ),

twopi = Math.PI * 2,

parts = [],

sizeBase,

cw,

opt,

hue,

count;

function rand( min, max ) {

return Math.random() * ( max - min ) + min;

}

function hsla( h, s, l, a ) {

return 'hsla(' + h + ',' + s + '%,' + l + '%,' + a + ')';

}

function create() {

sizeBase = cw + ch;

count = Math.floor( sizeBase * 0.3 ),

hue = rand( 0, 360 ),

opt = {

radiusMin: 1,

radiusMax: sizeBase * 0.04,

blurMin: 10,

blurMax: sizeBase * 0.04,

hueMin: hue,

hueMax: hue + 100,

saturationMin: 10,

saturationMax: 70,

lightnessMin: 20,

lightnessMax: 50,

alphaMin: 0.1,

alphaMax: 0.5

}

ctx1.clearRect( 0, 0, cw, ch );

ctx1.globalCompositeOperation = 'lighter';

while( count-- ) {

var radius = rand( opt.radiusMin, opt.radiusMax ),

blur = rand( opt.blurMin, opt.blurMax ),

x = rand( 0, cw ),

y = rand( 0, ch ),

hue = rand(opt.hueMin, opt.hueMax ),

saturation = rand( opt.saturationMin, opt.saturationMax ),

lightness = rand(  opt.lightnessMin, opt.lightnessMax ),

alpha = rand( opt.alphaMin, opt.alphaMax );

ctx1.shadowColor = hsla( hue, saturation, lightness, alpha );

ctx1.shadowBlur = blur;

ctx1.beginPath();

ctx1.arc( x, y, radius, 0, twopi );

ctx1.closePath();

ctx1.fill();

}

parts.length = 0;

for( var i = 0; i < Math.floor( ( cw + ch ) * 0.03 ); i++ ) {

parts.push({

radius: rand( 1, sizeBase * 0.03 ),

x: rand( 0, cw ),

y: rand( 0, ch ),

angle: rand( 0, twopi ),

vel: rand( 0.1, 0.5 ),

tick: rand( 0, 10000 )

});

}

}

function init() {

resize();

create();

loop();

}

function loop() {

requestAnimationFrame( loop )

ctx2.clearRect( 0, 0, cw, ch );

ctx2.globalCompositeOperation = 'source-over';

ctx2.shadowBlur = 0;

ctx2.drawImage( c1, 0, 0 );

ctx2.globalCompositeOperation = 'lighter';

var i = parts.length;

ctx2.shadowBlur = 15;

ctx2.shadowColor = '#fff';

while( i-- ) {

var part = parts[ i ];

part.x += Math.cos( part.angle ) * part.vel;

part.y += Math.sin( part.angle ) * part.vel;

part.angle += rand( -0.05, 0.05 );

ctx2.beginPath();

ctx2.arc( part.x, part.y, part.radius, 0, twopi );

ctx2.fillStyle = hsla( 0, 0, 100, 0.075 + Math.cos( part.tick * 0.02 ) * 0.05 );

ctx2.fill();

if( part.x - part.radius > cw ) { part.x = -part.radius }

if( part.x + part.radius < 0 )  { part.x = cw + part.radius }

if( part.y - part.radius > ch ) { part.y = -part.radius }

if( part.y + part.radius < 0 )  { part.y = ch + part.radius }

part.tick++;

}

}

function resize() {

cw = c1.width = c2.width = window.innerWidth,

ch = c1.height = c2.height = window.innerHeight;

create();

}

function click() {

create()

}

window.addEventListener( 'resize', resize );

window.addEventListener( 'click', click );

init();</script>

<footer><div   style="position:absolute;bottom: 0px;">

<a  href="http://www.miitbeian.gov.cn/" target="_blank" >粤ICP备17135247号-1</a>

<a  href="http://www.13240chk.com" target="_blank" >天阁教程网</a></div></footer>

</body>

</html>

以上是关于HTML5模糊的圆点背景动画特效的主要内容,如果未能解决你的问题,请参考以下文章

分享7款超赞的CSS3动画效果,值得你收藏!

案例如何用html5 制作canvas酷炫的网状图形动画特效

教程HTML5 Canvas旋涡粒子动画特效

案例html5 Canvas酷炫粒子图形变形动画特效

html5+canvas全屏的520爱心表白网页代码

HTML5绘制3D线条延伸动画特效