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

HTML5小游戏---爱心鱼(上)

难度中级
时长 2小时34分
学习人数
综合评分9.50
139人评价 查看评价
9.6 内容实用
9.5 简洁易懂
9.4 逻辑清晰

最新回答 / 慕婉清9442512
我也有这样原问题,我是在画背景的时候多添加了句代码function drawBackground() {     bgPic.onload = function() {          ctx2.drawImage(bgPic, 0, 0, canWidth, canHeight);     }}改成:function drawBackground() {     ctx2.drawImage(bgPic, 0, 0, canWidth, canHeight);}

最新回答 / qq_七彩虹儿_0
1.html要引用<script type="text/javascript" src="js/main.js" ></script> <script type="text/javascript" src="js/background.js" ></script>2. document.body.onload = game;  

最新回答 / 慕粉4334522
可能原因如下:(1)在game()函数中,先初始化,再调用gameloop()函数,即init()在gameloop()之前调用(2)function gameloop() { window.requestAnimationFrame(gameloop);}我用的是HBuilder,可能requestAnimationFrame()函数名不太一样.

最赞回答 / 慕粉3988711
大兄弟一看就知道没有看过DOM事件,请翻阅JS高级程序设计第三版将书籍翻到350页仔细研读DOM0级事件处理程序,再将书籍翻阅到362-363页请翻阅13.4.1的UI事件下的load事件,请仔细阅读load事件中的第二句话,否则怎么可能会提出这种“document.body.onload=game?这是什么玩意,跟你这么写完全就调用函数不成功”的奇葩建议。

最新回答 / 慕移动9181930
也可以,但是从语义上看,还是onclick点击事件更容易理解。注意:numa&gt;numb大于号两边没有空格numa==numb等于两边没有空格,在试一试吆。

已采纳回答 / callosity_CC3966041
一般是按f12或者右键检查元素,如果是谷歌浏览器的话在右边有三个竖着的点,点一下找到更多工具,然后点开发者工具,浏览器的右边或者下边会出现一个栏,点一下console那个框就可以看到。键盘在CTRL+Shift+I 也可以调出这个栏

最赞回答 / sophia93014252989
已解决  在HTML文件中将z-index:1;写成了z-index:1px有没有大神说下1和1px的区别呢?

最新回答 / YnezWood
应该是你html文件中,id=“canvas1”的标签不是canvas,把标签改为canvas应该就可以了

已采纳回答 / 田心枫
我自己也用的不多  但是可以学学  技多不压身

最赞回答 / qq_风龙_0
增加图片加载监听(等待图片加载完),加上bgPic.onload=function(){ctx2.drawImage(bgPic, 0, 0, canWidth, canHeight);}要不就增加页面自动刷新函数,使用setInterval或者requestAnimationFrame,不断调用game函数,但不能使用两者一起使用,会不显示(估计是不断刷新,不断等待图片加载造成图片永远加载中而不显示)

已采纳回答 / mousseOne
应该是atan2内部计算角度多了个PI,你可以改一下代码<...code...>
课程须知
1、对html、css基础知识已经掌握。 2、对JavaScript的基础知识掌握,如数组、类、对象。
老师告诉你能学到什么?
1、html5 canvas制作游戏理念 2、html5 canvas 绘图API 3、游戏中的碰撞检测 4、认识几个数学函数 5、物体池概念 6、序列帧动画的控制

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消