已采纳回答 / cathy_1007
globalAlpha的特别是针对全局改动。fillStyle是针对你设置的元素来说的。如果只做了一个动画,两者效果一样。绘制多个效果时,前者的作用就发挥出来了。试想,如果我绘制了一个透明度为0.7的蓝色小球和透明度数为0.7的红色的小球,是不是要设置两次透明度呢?如果我再绘制一个透明度为0.7的黄色小球呢??还要设置一下。如果绘制100个或更多确定颜色的小球,透明度都是0.7的呢?
已采纳回答 / xianrongbin
此时,body还没加载解析完成,找不到 canvas 这个元素。可以使用 window.onload=function() { } ,或者将 js放在canvas 元素下面。
2017-03-09
已采纳回答 / 慕粉1010182089
如果在同一个方法里面创造和调用,可以不用传入参数,但更常见的方式是,把所有需要的绘制方法库存在另外一个js文件里,需要的时候再引入,这时候,参数传入ctx就又必要了
2017-02-19
已采纳回答 / 奴奴雪人
if( circle.y <=RADIUS ){//如果小球碰到顶部 circle.vy = - Math.abs(circle.vx)//y方向速度反向, circle.y = RADIUS; }if( circle.x <= RADIUS ){//如果小球碰到左 circle.vx = - Math.abs(circle.vx) ...
2017-01-03
已采纳回答 / 红书包
for(var i = 0; i < 5; i++){cxt.lineTo(Math.cos((18+i*72)/180*Math.PI*20), -Math.sin((18+i*72)/180*Math.PI)*20 );cxt.lineTo(Math.cos((54+i*72)/180*Math.PI)*0.5*20,-Math.sin((54+i*72-)/180*Math.PI)*0.5*20);最后一排多了个“-”号
2016-12-16
已采纳回答 / 什0么
你可以先把底层蓝色直接fill一个大的圆角矩形, 之后再把红色的小圆角矩形贴上去就不会出现那些白色东西了,反正你做2048的画 直接控制里面的小圆角矩形就可以了
2016-12-08
已采纳回答 / 等待下一个约定
你那上面的代码var ctx=canvas.getContext("2d");明明是ctx,drawRoundRect(context,100,100,600,500,50); 你传的参数是context肯定不行呀
2016-12-07
已采纳回答 / 慕粉4272840
兄弟啊。。。addColorStop不是属性 是方法 landstyle.addColorStop(0,'#030');landstyle.addColorStop(1,'#580');这样就可以了
2016-12-01
已采纳回答 / 不见幽人独往来
差别大了,前者指元素(比如某个div)距离可视区域顶部的距离,后者包括滚动条卷起的部分。<...图片...>js原生的offsetTop属性有很多浏览器兼容性问题,用时要慎重。
2016-11-19
已采纳回答 / 网络摆渡客
29行,写错了,vx应该是vy
已采纳回答 / 草莓summer
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title></title></head><body>//你的错误在于canvas标签,canvas不是一个div,它是html5的一个特定的标签,不能用<div id="canvas">这样来创建一个canvas<canvas id="canvas" style="border:1...
2016-11-15
已采纳回答 / 慕粉4076523
1、之前少了<canvas id=canvas......></canvas>的一系列内容2、然后路径规划完后少了绘制的过程,context.stroke()或者填充之类的
2016-11-14