我有一个动画需要1秒才能完成,然后我想显示一些用户名/密码的文本框和一个登录按钮。是否有某种" oncomplete"动画事件?
答案 0 :(得分:1)
是的,肯定有..
它将是你的setTransform或同等动画函数中的第三个参数..
检查出来..
编辑:
我确实误解了你的问题。没有发出的事件,只有设置完成处理程序的能力。
var Engine = require("famous/core/Engine");
var Surface = require("famous/core/Surface");
var StateModifier = require("famous/modifiers/StateModifier");
var Transform = require("famous/core/Transform");
var Easing = require("famous/transitions/Easing");
var context = Engine.createContext();
var surface = new Surface({
size:[200,200],
properties: { backgroundColor: 'green' }
})
surface.state = new StateModifier({ origin:[0,0.5] });
var completionFunction = function(){ console.log("Complete!"); };
var xOffset = 0;
context.add(surface.state).add(surface);
surface.on('click', function(){
transition = { duration:1000, curve:Easing.inOutQuad };
xOffset += 100;
surface.state.setTransform(Transform.translate(xOffset,0,0),transition, completionFunction )
});
答案 1 :(得分:1)
没有内置的' oncomplete'事件,但假设你正在使用某种Transitionable,你可以通过Transitionable #set的回调参数做任何你想做的事情:
https://famo.us/docs/0.1.1/transitions/Transitionable/#set
如果您更喜欢使用事件,可以使用EventEmitter通过回调自己发出一个。