2011-12-09 7 views
2

애니메이션이 완료된 후에 이벤트를 트리거하는 방법이 있습니까? 그게 무슨 대가리 요?YUI Anim on After 이벤트?

내 편안히 앉 지금

var anim = new Y.Anim({ 
     node: node, 
     duration: 1.0, 
     easing: Y.Easing.easeOut 
    }); 

... 등

주입니다 .. 나는 YUI 라이브러리에 아주 새로운 그리고 난 길을 잃지 해요 :이 YUI2에 적용됩니다.

답변

1

Yup!

var myAnim = new YAHOO.util.Anim("yourId", { 
    left: {from: 0, to:75} 
}, 1); 

myAnim.onComplete.subscribe(function() { 
    alert('Done!'); 
}); 

더 많은 예제 http://developer.yahoo.com/yui/examples/animation/index.html를 참조하십시오처럼 뭔가.

+0

이 YUI 2 또는 3입니까? 그것은 내 코드에서 작동 소리가 나지 않습니다 ... 나는 yui3 – Francesco

+3

을 사용하여 메신저 이것은 2.x 용입니다. 나는 3.x를 사용한 적이 없지만 문서에는 여기에 몇 가지 정보가 있습니다. http://yuilibrary.com/yui/docs/anim/end-event.html –

+0

감사합니다! 나는 그것을 해결했다 – Francesco

0

생각이다, 애니메이션은 시간이 필요하기 때문에, 당신은 애니메이션이 당신이해야 할 수도 있습니다 추가 로직을 수행하기 위해 완료 될 때 통지 할 수 있음 :

  1. 트리거 : 여기에 해당 이벤트에 대한 몇 가지 용도가있다 애니메이션이 완료되면 추가 애니메이션. 이것은 UI의 동일한 요소 또는 완전히 다른 부분에있을 수 있습니다.
  2. DOM에서 요소를 제거하십시오. 아마도 그것은 팝업 창은은 (애니메이션 포함) 폐쇄되면, 더 이상 필요 DOM에서
  3. 뭔가 다른, 등의 내용으로 요소를 작성 같은 없다고했다
1

후 뭔가를 애니메이션이 완료되면 "종료"이벤트를 듣기 만하면됩니다.

var anim = new Y.Anim({ 
    node: node, 
    duration: 1.0, 
    easing: Y.Easing.easeOut, 
    on: { 
     end: function (e) { 
      // your stuff here 
     } 
    } 
});