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;
}
}
因此,这是启动视差事件运行的所有代码。我正在使用Lee Brimelow layersmagazine.com 的代码。
当您将鼠标向左或向右移动舞台时,视差效果可以很好地滚动,但我希望它做的是在加载时自动启动视差效果,滚动一会儿然后停止并切换到由鼠标控制。
鼠标悬停事件并不是真正有效,因为滚动不能很好地使用它。
创建一个计时器以从自动滚动切换到鼠标滚动。将事件侦听器添加到 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
}