Pergunta

Se eu aplicar 2 interpolações no mesmo elemento, não haverá interpolação.Por que?Ou estou fazendo algo errado?

_input.tween('opacity', 1);
_input.tween('height', '100px');
// nothing happens

Mas ambos funcionam individualmente.

Violino

Foi útil?

Solução

Element.prototype.tween é uma abstração de Fx.Tween, o que cria um novo Fx.Tween instância nesse elemento e vincula-se a uma única propriedade por vez.

http://mootools.net/docs/core/Fx/Fx.Tween#Element-Properties:tween - você está instanciando duas interpolações que provavelmente interferem uma na outra desde o iirc, o getter/setter de elemento só pode funcionar com uma única instância - que vai para o Element Storage.

você quer usar morph em vez de - http://mootools.net/docs/core/Fx/Fx.Morph e passe um objeto, ou seja,

_input.morph({
    opacity: 1,
    height: 100
});

morph foi concebido para modificar múltiplas propriedades no mesmo objeto de elemento em um temporizador unificado.

você poderia fazer manualmente new Fx.Tween(_input, ... ) duas vezes e funcionará, mas pode não estar 100% no mesmo relógio da animação, então pode parecer instável

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top