2010-11-04 5 views
0

im создание сайта, на котором нужно загружать случайные видео на главной странице. У меня есть пара swfs на корне, и я создал .swf с именем random, который будет загружаться на главной странице (загружается в ту же папку с swfs), и, надеюсь, он загрузит один из фильмов за раз. Пока не повезло. это код я используюAS3 random .swf loading

stop(); 
var movieArray:Array = ['1', '2', '3']; 
var loader:Loader = new Loader(); 
var index:int = movieArray.length * Math.random(); 
var url:String = movieArray[index] + '.swf'; 
trace("Attempting to load", url); 
loader.load(new URLRequest(url)); 
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete); 
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loaderIOError); 
addChild(loader); 
function loaderComplete(e:Event):void {  
    trace("Successfully loaded", url); 
    } function loaderIOError(e:IOErrorEvent):void {  
    trace("Failed to load", url); 
    } 

ой, я использую AS3. и vids сделаны также в AS3. Любые идеи? Thnx.

ответ

1

Я думаю, что эта конкретная линия, вероятно, вызывает у вас вопрос:

var index:int = movieArray.length * Math.random(); 

В частности, нет никакой гарантии, что movieArray.length * Math.random() даст тип Int. Вам нужно обернуть операцию внутри Math.floor(), чтобы убедиться, что вы получите Int, что это в пределах вашего массива:

var index:int = Math.floor(movieArray.length * Math.random()); 

Если вы все еще не видите вашу нагрузку SWF фильмы, то есть, скорее всего, проблема в другом месте также, но мое решение является самым простым для начала, и если это сработает, вы закончили.

+0

Argh can not верить, что я забыл пол: D: D благодарит Брайана. – cac

Смежные вопросы