2015-01-31 6 views
1

Я пытаюсь сделать простую пульсирующую анимацию элемента на экране в Framer.js и теперь он выглядит следующим образом:Как сделать бесконечный цикл анимации с использованием CoffeeScript в Framer.js?

element.animate 
    properties: scale:1.3 
element.on Events.AnimationEnd,-> 
    this.scale = 1 
    locationUn.animate 
     properties: scale:1.3 

в основном, когда экран загружается, то элемент будет расширен и на конце анимации, она снова возвращается к масштабу 1 и снова запускает анимацию; но это решение не изящно, а анимация кажется очень резкой.

Я новичок в CoffeeScript ... есть в любом случае, чтобы написать бесконечный цикл, чтобы проверить какое-то условие вроде этого?

checker = true 

while(checker == true){ 
    run animation 
    if(some events occurs){ 
     checker = false 
    } 
} 
.... 

Как это реализовать в CoffeeScript?

+0

есть причина вы бы ожидать, что это будет отличаться в CoffeeScript, чем JavaScript? Ваш кофейник выше выглядит отлично и будет работать, как ожидалось. –

+0

Работает пульсирующая анимация, но анимация очень крутая (прыгает с масштаба 1.3 непосредственно на 1 без перехода). Я ищу общий способ написания бесконечного цикла, чтобы, надеюсь, сделать его гладким. – Rexroth

ответ

2

Вы можете создать циклический импульс, как это:

circle = new Layer() 
circle.style.borderRadius = "100%" 
circle.backgroundColor = "white" 
circle.center() 

outwards = new Animation({ 
    layer: circle, 
    properties: {scale: 1.3}, 
    curve: "ease-in-out" 
}) 

inwards = outwards.reverse() 

outwards.on(Events.AnimationEnd, inwards.start) 
inwards.on(Events.AnimationEnd, outwards.start) 

outwards.start() 
+0

Спасибо! Я не понимал, что могу объективировать анимацию тоже – Rexroth