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

canvas实现星星闪烁特效

难度中级
时长 1小时15分
学习人数
综合评分9.53
70人评价 查看评价
9.7 内容实用
9.5 简洁易懂
9.4 逻辑清晰
谢谢老师~
有些细节写错了 而且声音速度太慢了 没速度啊
在整体循环里对星星的绘制采用canvas.onmouseove还真不行,canvas是整个紫色区域,如果通过canvas调用onmouseout、onmousemove等api,当鼠标在图片外在canvas内,log显示的也是true,与需求不符。
晕,刚看效果时觉得很赞,结果这么长的课程,写起来有点得不偿失啊

最新回答 / 晴天沁梦
那你应该是没有改ctx.drawImage(girlPic, 100, 150, 600, 300);这行的代码

最新回答 / 化龙贝
http://www.imooc.com/learn/277 课程地址
赞一个!!!
哎,其实老师应该把顺序反过来,先function drawStars;然后在把drawStars函数放到gameloop中,最后 因为gameloop会在 function init函数中运行;所以可以绘制出60个带有星星的canvas~~~哎。。。我也是醉了,老师你这逻辑不是讲课了,是在考验理解能力了~~
老师你讲错咯。
老师能给我发一份requestAnimFrame这个函数的封装的js摸以及里面使用的图片摸~邮箱942962976@qq.com
老师,资料下载里面,下载的包在mac系统下,没法打开哈~不能使用啊
貌似老师是想添加一个透明度的渐变效果,不过的确用不着一直绘制背景和星星,function aliveUpdate(){

if( switchy){

drawStars();opacity+=时间差/50+0.01;
if(opacity>1){opacity=1};

}
就可以了吧,判断是否在画布内不能用mousover事件吗?

已采纳回答 / nc1199
背景是不用一直绘制,这是真的。但是星星还是要这样做的,因为对星星有超出边界值和重生的判断;
在整体循环里对星星的绘制采用canvas.onmouseover不行吗
课程须知
1、具有HTML、CSS基础知识 2、具有JavaScript基础知识(函数、类、对象) 3、具有一些Canvas基础(画线、弧线、圆)
老师告诉你能学到什么?
1、如何轮播一张图片上的序列帧 2、canvas的几个主要绘图API:drawImage()、save()、restore()。 3、如何处理鼠标事件 4、如何化繁为简的做项目

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消