我有一个导入外部SWF的Flash动画。 我在外部SWF(WASD移动星形)内部有一些交互操作,并且在容器中(O改变圆形颜色)。 一切适用于Chrome和Firefox,但不适用于Internet Explorer,这让我很头疼。 下面是测试:http://clients.adrime.com/files/campaigns2/9785452187/38177/default.htm 这里容器的交互代码:AS3:键盘输入将无法在Internet Explorer上工作
stage.focus = stage;
stage.addEventListener(KeyboardEvent.KEY_DOWN, onoff);
function onoff(e:KeyboardEvent):void
{
if(e.keyCode == 79) //O
bulb.gotoAndStop(bulb.currentFrame == 1 ? 2 : 1);
}
这里的外部SWF的一个:
this.addEventListener(Event.ADDED_TO_STAGE, added);
function added(e:Event):void
{
stage.addEventListener(KeyboardEvent.KEY_DOWN, tastiera);
}
function tastiera(e:KeyboardEvent):void
{
if(e.keyCode == Keyboard.A)
st.x -= 5;
else if(e.keyCode == Keyboard.D)
st.x += 5;
else if(e.keyCode == Keyboard.W)
st.y -= 5;
else if(e.keyCode == Keyboard.S)
st.y += 5;
}
那是什么我失踪?
嗨,我在flash.log中收到警告: 警告:引用未声明的变量'_init'。它与你的代码有关吗?还有很多安全沙箱违规。 –