Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash IE不支持as3预加载操作_Flash_Actionscript 3_Actionscript_Flash Cs4_Flash Cs5 - Fatal编程技术网

Flash IE不支持as3预加载操作

Flash IE不支持as3预加载操作,flash,actionscript-3,actionscript,flash-cs4,flash-cs5,Flash,Actionscript 3,Actionscript,Flash Cs4,Flash Cs5,我使用了下面的代码 stop(); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onLoadingAction); this.loaderInfo.addEventListener(Event.COMPLETE, onLoadedAction); this.loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErroAction); function onLoadingAc

我使用了下面的代码

stop(); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onLoadingAction); this.loaderInfo.addEventListener(Event.COMPLETE, onLoadedAction); this.loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErroAction); function onLoadingAction (e:ProgressEvent):void { trace("loading"); } function onLoadedAction (e:Event):void { this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, onLoadingAction); gotoAndStop(currentFrame+1); } function ioErroAction (e:IOError):void { trace("Dev Ben " + e.toString()); } 此代码支持chrome和firefox。但如果我使用IE运行,它会被onLoadingAction卡住


要在IE中运行,我需要做什么?

不幸的是,根loaderInfo的完整事件不可靠,在不同的浏览器中表现不同。如果文件被缓存或在本地运行,它将无法在某些浏览器中启动

相反,在ENTER_帧或计时器处理程序中检查loaderInfo.bytesLoaded==loaderInfo.ByTestTotal:

addEventListener(Event.ENTER_FRAME, onEnterFrame);

function onEnterFrame(event:Event):void
{
    if(loaderInfo && loaderInfo.bytesLoaded == loaderInfo.bytesTotal)
    {
        // load complete
    }
}

不幸的是,根loaderInfo的完整事件不可靠,并且在不同的浏览器中表现不同。如果文件被缓存或在本地运行,它将无法在某些浏览器中启动

相反,在ENTER_帧或计时器处理程序中检查loaderInfo.bytesLoaded==loaderInfo.ByTestTotal:

addEventListener(Event.ENTER_FRAME, onEnterFrame);

function onEnterFrame(event:Event):void
{
    if(loaderInfo && loaderInfo.bytesLoaded == loaderInfo.bytesTotal)
    {
        // load complete
    }
}

只是出于好奇,你能输出onload动作的痕迹吗?@goliatone:完全阅读我的问题。我确实读了。我只是不明白你所说的“死守在线”是什么意思。我在IE中也遇到过类似的问题。死守意味着。。。它没有移动到完成事件处理程序,而是停留在progressEvent事件处理程序中。请与Mike Welsh核对答案。。。这很好。只是出于好奇,你能输出onLoadingAction的痕迹吗?@goliatone:完全阅读我的问题。我确实读了。我只是不明白你所说的“死守在线”是什么意思。我在IE中也遇到过类似的问题。死守意味着。。。它没有移动到完成事件处理程序,而是停留在progressEvent事件处理程序中。请与Mike Welsh核对答案。。。这工作得很好。难道不能使用ProgressEvent进行检查吗?不幸的是,我相信ProgressEvent在某些环境中也可能存在不触发的问题。刚才在IE9中测试本地SWF时,PROGRESS事件没有触发,即使完整事件触发了。因此,一般来说,我不会信任根loaderInfo上的事件,只会在ENTER_框架中检查是否完成。IE10上的Flash 11.8遇到了这个问题。在本地硬盘上打开文件c:/index.html加载c:/movie.swf时,不会触发进度事件。切换到onEnterFrame并检查bytesload工作正常。谢谢难道不能使用ProgressEvent进行检查吗?不幸的是,我相信ProgressEvent在某些环境中也可能存在不触发的问题。刚才在IE9中测试本地SWF时,PROGRESS事件没有触发,即使完整事件触发了。因此,一般来说,我不会信任根loaderInfo上的事件,只会在ENTER_框架中检查是否完成。IE10上的Flash 11.8遇到了这个问题。在本地硬盘上打开文件c:/index.html加载c:/movie.swf时,不会触发进度事件。切换到onEnterFrame并检查bytesload工作正常。谢谢