2010-08-06 3 views
1

모든 script.aculo.us 효과를 일시 중지 할 수 있습니까? 그래서 필요할 때 일시 중지 된 상태에서 다시 시작할 수 있습니다.pause script.aculo.us effects

답변

1

그렇게 보이지는 않겠지 만 재미있는 점이있는 게시물을 발견했습니다. 효과의 매개 변수가 취소 된 상태에서 그대로 남아 있는지 또는 그대로있는 지 알 수 없습니다. 원래의 상태에 있지만 주위에 수리 할 가치가있을 수도 있습니다. 에서

: http://groups.google.com/group/prototype-scriptaculous/browse_thread/thread/f37ea88cba01c8a5

보인다, 그 ( Effect.Move 포함) Script.aculo.us와 핵심 효과, 작동 cancel() 방법에 대한.

코어 효과는 다음과 같습니다 Effect.Highlight, Effect.Morph, Effect.Move, Effect.Opacity, Effect.Scale, Effect.Parallel, Effect.Tween

그래서 당신은 같은 것을 할 수 있습니다 : 당신은 효과 참조 오브젝트를 유지할 수

var myEffect = new Effect.Move(object, { duration: 5.0, x: 20, y: -30, mode: 'relative' });
myEffect.cancel();

을 (이 예에서 myEffect) ~ 언제든지 중지하고 나중에 새 이동으로 다시 시작 효과.

+0

나는 또한 게시물을 발견했으나'cancel'은 실제로 효과를 취소하여 대기열에서 제거했으며 이는 또한 대기열에서 다음의 모든 효과를 취소해야 함을 의미합니다. 그리고 이력서가 없습니다. 분명히 모든 효과를 취소하고 다시 만들려고 시도하지만 일시 중지/다시 시작하지는 않습니다. – tig

+0

@tig 다른 대안은 scriptaculous 소스를 수정하는 것입니다. 모든 효과를 큐에서 꺼내지 않는 자신 만의 일시 정지 메소드를 추가 할 수 있어야합니다. 기본적으로 실행하기 전에'isPaused' 변수를 참조하는'Effect.Base.prototype.loop'에 라인을 추가하십시오. 이렇게하면 효과를 일시 중지하고 일시 중지 할 수 있습니다. 그러면 일시 정지 방법으로 그 bool을 뒤집을 수 있습니다. –