Событие загрузчика Actionscript не запускается в Firefox - PullRequest
0 голосов
/ 15 марта 2012

Мне было интересно, может ли кто-нибудь помочь, так как я не большой гуру ActionScript.

Я просто унаследовал некоторый код, который создает встроенный музыкальный проигрыватель rdio в swf.Он отлично работает в Firefox и Safari, за исключением того, что встроенный проигрыватель не отображается в Firefox ...: (*

Это общая проблема с классом Loader или событиями contentLoaderInfo?

import flash.display.Loader;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.*;
import flash.net.URLRequest;


flash.system.Security.allowDomain('rd.io');
flash.system.Security.allowDomain('rdio.com');


/* AD SPECIFIC VARIABLES */

var loader_url:String = 'http://rd.io/e/QUzrrjNWMC8/220/500/';
var loader_x:int = 40;
var loader_y:int = 50;


/* RDIO EMBED */


stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
var loader:Loader = new Loader();
loader.load( new URLRequest(loader_url) );
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderDone);
var sprite:Sprite = this;
function loaderDone(event: Event):void
{
    event.target.removeEventListener(Event.COMPLETE, loaderDone);
    loader.x = loader_x;
    loader.y = loader_y;
    sprite.addChild(loader);
}

Ответы [ 3 ]

0 голосов
/ 15 марта 2012
  1. Всегда прислушиваться к ошибкам или исключениям

    loader.contentLoaderInfo.addEventListener (IOErrorEvent.IO_ERROR, ioErrorHandler); loader.contentLoaderInfo.addEventListener (SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);

  2. Вызвать функцию load () после прослушивания событий. (не уверен, если что-то изменит, но это хорошая практика программирования)

    var loader: Loader = new Loader (); loader.contentLoaderInfo.addEventListener (Event.COMPLETE, loaderDone); loader.load (новый URLRequest (loader_url));

0 голосов
/ 08 августа 2014

Эта ссылка может помочь, завершенное событие иногда не воспроизводится на Firefox. http://numiko.com/labs/2009/12/flash-event-complete-sometimes-doesnt-fire-in-firefox/

0 голосов
/ 15 марта 2012

Вы уверены, что событие не запускается?

Сначала я думал, что это вообще не проблема Flash, а проблема CSS.Убедитесь, что ваш Flash-контент не скрыт CSS, например листом сброса CSS.

Я не знаю каких-либо специфических проблем браузера, связанных с Loader или contentLoaderInfo.Основываясь на опыте, я действительно сомневаюсь, что именно в этом заключается ваша проблема.

Вы можете добавить другие события, чтобы попытаться диагностировать ошибку AS3:

loader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
loader.contentLoaderInfo.addEventListener(Event.OPEN, openHandler);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, unLoadHandler);
...