您的位置:首页 > 其它

canvas绘制的小效果

2012-12-21 20:50 211 查看
闲来无事,随便写的一个canvas绘图的小效果,主要是好玩,话不多说,直接上代码:

View Code

var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
var arr = [];
var brr = ['red', 'blue', 'yellow', 'white', '#EEEEFF', 'gold', 'pink'];
var crr = [];
var t = null;
cavnas.addEventListener('click',draw,false);
function draw(e) {
if (t) { clearTimeout(t) };
arr.push({ x: e.clientX, y: e.clientY, ind: 0, d: false });
var n = Math.ceil(Math.random() * 8) - 1;
crr.push(brr
);
function set() {
context.clearRect(0, 0, canvas.width, canvas.height);
t = setTimeout(set, 20);
for (var i = 0; i < arr.length; i++) {
(function (j) {
if (arr[i].d == false) { arr[i].ind += 1; };
if (arr[i].d == true) { arr[i].ind -= 1; };
if (arr[i].ind >= 80) { arr[i].d = true; };
if (arr[i].ind <= 0) { arr[i].d = false; };
context.beginPath();
context.fillStyle = crr[i];
context.arc(arr[i].x, arr[i].y, arr[i].ind, 0, Math.PI * 2, true);
context.fill();
context.closePath();
})(i);
}
}
set();
}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: