Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
body { margin:0;background-color: #1d1f20 } canvas { display:block; cursor:pointer; }
JavaScript
function App() { let width, height; const canvas = document.getElementById('canvas'), context = canvas.getContext('2d'); const NUM_BUBBLES = 100; const bubbles = []; let cscale = chroma.scale([chroma.random(), chroma.random()]); init(); function init() { onResize(); window.addEventListener('resize', onResize, false); for (let i = 0; i < NUM_BUBBLES; i++) { initBubble(i); } document.addEventListener('click', () => { cscale = chroma.scale([chroma.random(), chroma.random()]); }); animate(); } function initBubble(i) { if (!bubbles[i]) bubbles[i] = { i }; const b = bubbles[i], r = 1 + rnd() * 20, x = rnd() * width, dx = rnd(10, 20); b.r = r; b.x = x - dx; b.y = height + r * 2; b.color = cscale(rnd()).alpha(rnd(0.1, 0.8)); const tweenx = gsap.to(b, { duration: 1 + rnd() * 2, x: b.x + dx, repeat: -1, yoyo: true, ease: Power0.easeNone }); gsap.to(b, { duration: b.r * 0.5, y: -b.r, ease: Power2.easeIn, // ease: Power0.easeNone, onCompleteParams: [b, tweenx], onComplete: function (b) { tweenx.kill(); initBubble(b.i); } }); } function drawBubble(b) { context.beginPath(); context.arc(b.x, b.y, b.r, 0, 2 * Math.PI, false); context.fillStyle = b.color; context.fill(); context.beginPath(); context.arc(b.x, b.y, b.r + 2, 0, 2 * Math.PI, false); context.lineWidth = 1; context.strokeStyle = b.color; context.stroke(); } function animate() { requestAnimationFrame(animate); context.clearRect(0, 0, width, height); for (let i = 0; i < NUM_BUBBLES; i++) { drawBubble(bubbles[i]); } } function onResize() { width = window.innerWidth; height = window.innerHeight; canvas.width = width; canvas.height = height; } function rnd(min, max) { if (min === undefined) { min = 0; } if (max === undefined) { max = 1; } return Math.random() * (max - min) + min; } } App();
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>canvas随机气泡-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号