永发信息网

关于html5 canvas 绘图动画的问题,我要实现把一张图片绘制在canvas中,然后使其动起来,代码如下,

答案:1  悬赏:0  手机版
解决时间 2021-03-17 14:42
关于html5 canvas 绘图动画的问题,我要实现把一张图片绘制在canvas中,然后使其动起来,代码如下,
最佳答案
首先,你这个代码中最后的setInterval("draw()", 100);应该改为setInterval(draw, 100);第一个参数应该是方法名,虽然你那样写也会有效,但强烈建议不要那么写。然后你说你的代码只是在屏幕上闪一下,那么你在画的时候先调一下cxt.beginPath();画结束的时候掉一下cxt.closePaht();试试,这个w3c网站上有讲解,不确定能不能解决你的问题。
补充:测了一下代码,发现问题是出在你的
img.onload=function()
{
cxt.drawImage(img,x,y,80,80);
}
这里,这边不能在img.onload回调方法中调用画图函数,直接画图就好了, cxt.drawImage(img,x,y,80,80);就这样。追问大师 非常感谢你的指导 ,我的图片已经能够动了 我是把img.onload去掉 但是为什么要去掉这个东西啊我有点不清楚,不是说先要通过img.onload将图片加载好了i以后画出来吗 这里为什么不用呢????追答图片只要加载一遍就行了,而你这样写相当于每画一次,都要加载一遍,那是不可能的咯。因此你可以把这个图片的加载完成函数放到一个绘画判断之前去执行,也就是如果这个onload没有执行,那么你的绘画interval就不要开始,可能说的不太清纯,你自己再理解理解。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
双醛怎样保护一个醛基使另一个醛基变成两个羟
红盘道地址在哪,我要去那里办事
用名字做网名
守望相助建设美丽家园对下联
176°52′÷3=?
当鸡蛋遇到茶叶,真的就变成坏蛋了吗
汽车驾驶证丢失了,补办后又找到了,两个都可
为什么我煲的瘦肉水会酸
喷砂处理工艺好处有哪些
在格瓦拉电影网选完座后还未完成支付就退出了
梦见已故父亲生活困苦,身体不好是什么意思啊
广州市第99中学是不是没有了啊?
台湾蓝雀两元邮票多少钱
百全购物超市地址有知道的么?有点事想过去
《爱在春天》里“多年以前 恍如昨夜。。”是
推荐资讯
情爱电影有哪些?视频片段
凤尾鱼生孩子后会死吗?
女儿25岁掉头发厉害,是什么原因造成的?
元次山集阅读答案
爱情在辞海里怎么解释?
巨 组词有哪些
真武大帝是道家的供奉?他的原形是什么人?
请问<二十四号墓碑>这本小说是谁原创的?---我
请问思督机器人中的思督怎么读?
勇闯地下城2.9人物任务怎么解锁攻略教程
请问金匠格摄影怎么样?
我在虹螺岘开车去天津怎么走·
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?