Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
body { background: #000; overflow: hidden; } canvas { bottom: 0; left: 0; position: absolute; right: 0; top: 0; } #c1 { opacity: 0; } #c2 { background: #000; }
JavaScript
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();
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>画布散景生成-jq22.com</title> <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号