为了账号安全,请及时绑定邮箱和手机立即绑定

canvas实现星星闪烁特效

难度中级
时长 1小时15分
学习人数
综合评分9.53
70人评价 查看评价
9.7 内容实用
9.5 简洁易懂
9.4 逻辑清晰

最新回答 / 化龙贝
http://www.imooc.com/learn/277 课程地址

已采纳回答 / nc1199
背景是不用一直绘制,这是真的。但是星星还是要这样做的,因为对星星有超出边界值和重生的判断;

已采纳回答 / nc1199
首先这个canvas是由一个大背景加上一个girl&start图片组成的,如果按照你的方式执行的效果就是:只要鼠标移动到背景图上就会触发星星效果;而老师的方法就只有在鼠标移动到图片区域上时才会触发星星效果;

已采纳回答 / 李晓健
就是这张图是由 7*7的7张小图片组成,每次只绘制一张就是一帧。整张图是由7帧组成。

最新回答 / Perona
可以哒。老师用的是sublime text 

已采纳回答 / 素素陈
在创建starsObj类时,this.x与this.y是starsObj类的属性,此时的this指的是starsObjinit中的this.x和this.y。此时的this是init,是不能写出了的。

已采纳回答 / 化龙贝
只要调用函数都需要带 () ,不带就变成属性了

最赞回答 / 慕虎7188715
if(this.picNo >= 7){    this.picNo=0;}之前是这样来判断picNo的,取得picNo值为0到6,现在换为picNo%7,即得到是picNo除以7后的余数,它们的余数也是0到6,这样就达到了我们的目的——取0到6的数(图片有7个小星星)。timer的累加是为了延长绘制下一个星星与上一个星星的时间间隔,即上一个星星绘制完,过50s再绘制下一个星星

已采纳回答 / 孩她爹
这个可以随意吧
课程须知
1、具有HTML、CSS基础知识 2、具有JavaScript基础知识(函数、类、对象) 3、具有一些Canvas基础(画线、弧线、圆)
老师告诉你能学到什么?
1、如何轮播一张图片上的序列帧 2、canvas的几个主要绘图API:drawImage()、save()、restore()。 3、如何处理鼠标事件 4、如何化繁为简的做项目

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消