为函数中的单个值设置动画
Animating a single value within a function
我正在尝试为我在HTML5中创建的形状设置动画。
myShape.drawFunc = function(){
var context = this.getContext();
context.beginPath();
context.arc(480, 480, animationValue, startingPoint * Math.PI, endingPoint * Math.PI, false);
context.lineTo(480,480);
context.closePath();
this.fillStroke();
}
我想使用jQuery.animate将animationValue
从一个值更改为另一个超时值。我真的不确定如何实现这一点,而且我需要在动画Layer.draw();
的每一步上运行一个函数,因为我的形状是画布形状。
有人知道如何在myShape.drawFunc中为animationValue
设置动画吗?
我应该补充一点,我正在尝试在myShape.on("mouseover",{});
中设置动画。使用setInterval方法等,这会带来任何问题吗?
更新:
segment.on("mouseover",function(){
var startingPoint = segData[index].startingPoint;
var endingPoint = segData[index].endingPoint;
var startingRadias = segData[index].radias;
var maxRadias = 250;
var updateRadias = startingRadias;
setInterval(function(){
if(updateRadias < maxRadias){
updateRadias++;
console.log("frame : "+updateRadias);
this.drawFunc = function(){
var context = this.getContext();
context.beginPath();
context.arc(480, 480, updateRadias, startingPoint * Math.PI, endingPoint * Math.PI, false);
context.lineTo(480,480);
context.closePath();
this.fillStroke();
}
rawLayer.draw();
}
},1000/30);
});
console.log显示他们正在调用setInterval,但形状似乎没有被重新绘制。
是的,您可以使用animate()
将animationValue
从一个值更改为另一个超时值:
var drawFunc = function (animationValue) {
var context = $("#myCanvas")[0].getContext("2d");
context.fillStyle="#FF0000";
context.fillRect(animationValue, animationValue, 150, 75);
},
from = 0, to = 50;
// now animate using the jQuery.animate()
$({ n: from }).animate({ n: to}, {
duration: 1000,
step: function(now, fx) {
drawFunc(now);
}
});
在这种情况下,我们将在1秒内设置从0到50的动画。
这不完全是你的动画代码,但你应该掌握它的窍门。在这里演示
有关设置变量动画的更多信息
var FPS = 30;
setInterval(function() {
update();
draw();
}, 1000/FPS);
https://developer.mozilla.org/en/window.setInterval
相关文章:
- 设置动画时,SVG/Raphael大圆圈会变形
- jQuery animate()函数没有't设置动画
- 对象获胜'如果qml中的其他地方定义了数字动画属性,则t设置动画
- 如何在NativeScript中从列表中删除项目时设置动画
- angularjs路线过渡如何以交互方式设置动画
- 如何通过justinaguilar.com设置动画延迟?[解决]
- 当滚动条到达容器底部时设置动画
- 设置动画时jQuery停止侦听事件
- jQuery在模糊时设置动画-但仅当模糊超出形式时
- Reactjs在不使用插件的情况下为离开组件设置动画
- 在要设置动画的所有方法之间进行选择
- ng设置动画以创建slideIn/slideOut过渡
- 设置动画/移动putImageData放置的画布图像
- TweenSite不设置动画
- 使用jquery为html元素文本的每个字符设置动画
- 如何使用ngAnimate在CSS类之间设置动画
- 为已设置动画的元素设置动画
- scrollTop按钮没有't设置动画
- 可以使用jQuery'移动HTML背景吗;s设置动画
- 仅为父对象的填充设置动画