0
任何人都可以幫助我如何做相反的動畫呢?Unreveal動畫畫布
var $ = function(id) { return document.getElementById(id); }
// shim layer with setTimeout fallback
window.requestAnimFrame = (function(){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000/60);
};
})();
var cvs = $('cvs');
var ctx = cvs.getContext('2d');
var x = 0, y = 0, r = 0, count = 0;
x = cvs.width/2;
y = cvs.height/2;
time = Math.sqrt(Math.pow(cvs.width, 2) +
Math.pow(cvs.height, 2))/2;
ctx.fillStyle = 'red';
ctx.rect(0, 0, cvs.width, cvs.height);
ctx.fill();
ctx.globalCompositeOperation = "destination-out";
(function animate() {
if(count >= time) {
return false;
}else {
ctx.beginPath();
ctx.arc(x, y, r, 0, Math.PI * 2);
ctx.fill();
ctx.closePath();
r++;
count++;
window.requestAnimFrame(animate, 0);
}
})();
http://jsfiddle.net/j57msxr5/10/
我不能找到一種方法,使圓收縮。從大到小/點/走了。
撥弄半徑。以'r = cvs.width/2'開頭,然後嘗試'r - '而不是'r ++'。 – elclanrs 2014-09-25 00:06:00
已經比那。沒有發生。 – meetmahpuppy 2014-09-25 00:08:35
如果您向後退 – elclanrs 2014-09-25 00:09:16