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

最赞回答 / qq_Punisher_04304847
刚才找到了原因,是因为html加载顺序。当你引入js文件时,将<script>标签写在了<head>标签里面了吧?如果js里面涉及DOM操作,当你js文件加载时,DOM还没有加载,所以获得不到js文件中的想要效果。解决方法有两个:第一个是将引入js文件的<script>标签写在<canvas>标签后面,这样按顺序加载,js中的DOM操作的目标就已经存在了,可以操作了。不过这样不美观,还扰乱了html结构。第二个是不改变<script>标签引入js...

最新回答 / 慕莱坞5033121
你可以把定时器里面的时间设置的短一点 一般1000毫秒30帧人眼就看起来很连贯了,你可以把定时器里面的时间设置为30 或者20;帧数只要够多 就算一帧移动1000个像素你也看起来很连贯的
拉动滑动条感觉颜色变了是我的错觉么
对删除balls做了优化,直接写第一个for里就可以了。
function updateBalls(){

if(! ( balls[i].x +RADIUS &gt;0 &amp;&amp; balls[i].x - RADIUS &lt;WINDOW_WIDTH))
{
balls.splice(i, 1);//删除超出画布的balls
}
}
}
厉害了,我的哥!顶顶顶

已采纳回答 / 爱一代
我们没明白你这样做的理由是什么

已采纳回答 / qq_春花花_0
++i与i++不在赋值运算中的话,应该是相同的,都是自增,没有运算前运算后
思路有意思,实际没意义,图个好看,性能浪费太多
谢谢,老师讲的不错
老师讲的真好,真心佩服

最新回答 / 梦合九千
看看你的时间设置的对不对?

已采纳回答 / up2day
curShowTimeSeconds = getCurShowTimeSeconds()表示curShowTimeSeconds一直都在获取动态值,但我们要生成与与当前一样的彩色小球,实际上是获取一个curShowTimeSeconds静态值,而且随着getCurShowTimeSeconds()变化,这个获取到的curShowTimeSeconds变成了上一秒时间(静态的)。所以根本原因是:我们要动态生成彩色小球。 方法就是:通过添加nextShowTimeSeconds = getCurShowTim...

最新回答 / 小彬__
定义和用法onload 事件会在页面或图像加载完成后立即发生。onload 通常用于 <body> 元素,在页面完全载入后(包括图片、css文件等等。)执行脚本代码。语法在 HTML 中:<bodyonload="SomeJavaScriptCode">在 JavaScript 中:window.onload=function(){SomeJavaScriptCode};
课程须知
1.要对HTML+CSS相关标签有所掌握;2.对网页布局知识有简单的了解;3.掌握一定的JS基础知识
老师告诉你能学到什么?
通过学习Cancas倒计时效果的基础知识:比如球形的绘制,动画的基础原理,让Canvas帮助我们制作出绚丽的效果,力图每一个课程除了介绍知识,还能帮助大家使用Canvas制作出属于自己的动画和游戏作品。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消