Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
UI
|
输入
|
媒体
|
导航
|
其他
|
网页模板
|
APP模板
|
常用代码
|
在线代码
背景
对话框和灯箱
筛选及排序
反馈
弹出层
悬停
布局
图表
加载
圆边
滚动
标签
文本链接
工具提示
网络类型
拾色器
定制和风格
日期和时间
拖和放
通用输入
自动完成
密码
投票率
搜索
选择框
快捷键
触摸
丰富的输入
上传
验证
音频和视频
幻灯片和轮播图
图片展示
图像
地图
滑块和旋转
Tabs
水平导航
垂直导航
文件树
分页
手风琴菜单
其他导航
动画效果
浏览器调整
移动
独立的部件
杂项
游戏
PROMULGATOR
丿嗨丶请叫我营
河南省郑州市
关注作者
(4)
收藏此代码
(108)
← 解决IE浏览器不支持console,报错未定义问题
→ canvas实现哆啦A梦效果
相关代码
canvas
小球
喷射
canvas
粒子
动画
利用
canvas
绘制
粒子
效果
纯js完成
canvas
星空
粒子
效果
canvas
粒子
连线
canvas
特效
粒子
跟随鼠标移动
效果
canvas
下雨
Html
Css
Js
* { margin:0; padding:0; } #firCanvas { display:block; } body { background-color:#000; }
var canvas = document.getElementById('firCanvas'); var context = canvas.getContext('2d'); //画布与window窗口大小一致 function abc() { canvas.width = innerWidth; canvas.height = innerHeight; context.fillStyle = 'white'; context.fillRect(0, 0, canvas.width, canvas.height); } abc(); //widow的 resize 事件 if (window.addEventListener) { window.addEventListener('resize', abc, false); } else { window.attachEvent('onresize', abc); } //随机数 function rand(x, y) { return Math.floor(Math.random() * (y - x + 1) + x); } //创建构造函数实现小球半径随机; 颜色随机; 坐标在中间矩形内; 一半概率对在x轴的速度方向设置正, 大小与半径有关 function Ball() { this.r = rand(3, 10); this.color = "rgb(" + rand(0, 255) + "," + rand(0, 255) + "," + rand(0, 255) + ")"; this.x = rand(canvas.width / 2 - 200, canvas.width / 2 + 200); this.y = rand(canvas.height / 2 - 150, canvas.height / 2 + 150); // this.speedX = this.r* (rand(0, 1) ? 1 : -1); // this.speedY = this.r* (rand(0, 1) ? 1 : -1); if (this.x < canvas.width / 2) { this.speedX = this.r * (-1); } if (this.x > canvas.width / 2) { this.speedX = this.r * (1); } if (this.y < canvas.height / 2) { this.speedY = this.r * (-1); } if (this.y > canvas.height / 2) { this.speedY = this.r * (1); } // this.speedX = this.rand(3,10); // this.speedY = this.rand(3,10); } //原型赋值 //设置公共的行为 Ball.prototype.move = function() { this.r += 0.1; this.x += this.speedX; this.y += this.speedY; // context.quadraticCurveTo(0,0,canvas.width,canvas.height); } Ball.prototype.draw = function() { context.beginPath(); context.arc(this.x, this.y, this.r, 0, Math.PI * 2, false); context.fillStyle = this.color; context.fill(); } //设置数组 var balls = []; function zz() { for (var i = 0; i < 10; i++) { var ball = new Ball(); ball.draw(); //小球对象数组 balls.push(ball); } } setInterval(function() { zz(); context.clearRect(0, 0, canvas.width, canvas.height); for (var i = 0; i < balls.length; i++) { balls[i].move(); balls[i].draw(); } }, 100);
↑上面代码改变,会自动显示代码结果 jQuery调用版本:
1.11.3
立即下载
canvas 小球喷射
代码描述:canvas小球喷射,粒子效果
0
最新
发表评论
全部评论
暂时没有评论!
登录后才可以评论
30秒后在评论吧!
发表评论
回复
取消回复
<!doctype html> <html> <head> <meta charset="utf-8"> <title>canvas 小球喷射-jq22.com</title> <script src="https://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号