AS3 Tween Easing
Я установил наведение и зависание анимации на определенный элемент во флэш-памяти, когда вы наводите курсор на элемент, и информационное окно скользит вниз, а когда вы наводите курсор, оно скользит назад. При наведении курсора, когда я прекращаю работу до окончания анимации при наведении, данный объект переходит в конец первой анимации и обратно. Как сделать анимацию более легкой, когда кто-то наводит курсор на что-то?
function initialPlacement()
{
block1.x = (-814);
block1.y = (stage.stageHeight - 100);
}
initialPlacement();
tension.addEventListener(MouseEvent.ROLL_OVER,hover1);
tension.addEventListener(MouseEvent.ROLL_OUT,off1);
function hover1(event:MouseEvent):void{
hover1tween.start();
}
var hover1tween:Tween = new Tween(block1,"x",Regular.easeOut,(0-block1.width),0,30,false);
hover1tween.stop();
function off1(event:MouseEvent):void{
off1tween.start();
}
var off1tween:Tween = new Tween(block1,"x",Regular.easeInOut,0,(0-block1.width),30,false);
off1tween.stop();
initialPlacement();
1 ответ
Я полагаю, что самым простым способом было бы использование функции continueTo, которая будет отправлять анимацию в новом направлении, а не перезапускать ее.
function initialPlacement()
{
block1.x = (-814);
block1.y = (stage.stageHeight - 100);
block1tween = new Tween(block1,"x",Regular.easeInOut,(0-block1.width),0,30,false);
block1tween.stop();
}
var block1tween:Tween;
initialPlacement();
tension.addEventListener(MouseEvent.ROLL_OVER,hover1);
tension.addEventListener(MouseEvent.ROLL_OUT,off1);
function hover1(event:MouseEvent):void{
block1tween.continueTo(0, 30);
}
function off1(event:MouseEvent):void{
block1tween.continueTo((0-block1.width),30);
}
Это отвечает вашим потребностям? В противном случае вы могли бы заменить анимацию новым, каждый раз передавая текущие координаты в параметре "begin" Tween, но я считаю, что просто использовать continueTo() намного проще и чище.