2012-02-09 10 views
0
stage.addEventListener(Event.ENTER_FRAME, loop, false); 
function loop(e:Event): void 
{ 

if(scene.x <= -10 && scene.x >= -9200) 
    scene.x -= (this.mouseX - 490) * speed; 

{ 
    if(scene.x > -10) scene.x = -10; 
    if(scene.x < -9200) scene.x = -9200; 
} 

} 

이렇게 이것은 Parallax 이벤트 실행을 시작하는 모든 코드입니다. Lee Brimelow가 layersmagazine.com의 코드를 사용하고 있습니다.어떻게 Parallax에 대한 자동 스크롤을 만들고 마우스 컨트롤 이벤트로 전환합니까?

무대의 왼쪽이나 오른쪽으로 마우스를 움직일 때 시차 효과가 잘 스크롤되지만, 내가하고자하는 것은 패럴 랙스 효과를로드시 자동으로 시작하고 조금씩 스크롤 한 다음 마우스로 제어됩니다.

스크롤이 제대로 작동하지 않으므로 MouseOver 이벤트가 실제로 효과적이지 않습니다.

답변

0

자동 스크롤에서 마우스 스크롤로 전환하는 타이머를 만듭니다. 이벤트 리스너를 각 프레임을 조금씩 조정하는 Enter Frame 이벤트에 추가하십시오. 타이머가 해당 시간에 도달하면 Enter Frame 이벤트 리스너를 제거하고 마우스 스크롤 코드를 시작합니다.

뭔가 같은 ...

stage.addEventListener(Event.ENTER_FRAME, intro, false); 
var myTimer:Timer = new Timer(5000, 1); // 5 seconds (5000 milliseconds) 
myTimer.addEventListener(TimerEvent.TIMER, switchToMouse); 
myTimer.start(); 
function intro(e:Event):void 
{ 
    scene.x += 15; // Or whatever value scrolls nicely. 
} 
function switchToMouse(e:Event):void 
{ 
    stage.removeEventListener(Event.ENTER_FRAME, intro); 
    stage.addEventListener(Event.ENTER_FRAME, loop); 
} 
function loop(e:Event): void 
{ 
    // mouse code here 
} 
+0

정말 감사합니다! 나는 타이머를 만들어야한다는 것을 알고 있었지만 타이머를 만들려고 할 때마다 결코 작동하지 않았다. 훌륭하게 작동합니다! 수면 부족도 도움이되지 않습니다. – joemidi