I'm using a code to random show a quote and works fine however I'm getting an error:
TypeError: Error #2007: Parameter text must be non-null.
at flash.text::TextField/set text()
at quotes_fla::MainTimeline/rotateQuote()
at flash.utils::Timer/flash.utils:Timer::_timerDispatch()
at flash.utils::Timer/flash.utils:Timer::tick()
The code I'm using is:
ActionScript Code:
import caurina.transitions.Tweener;
var quote:Array = new Array();
var totalQuotes:Number;
quoteMC.alpha = 0;
var rotateTimer:Timer = new Timer(5000, 100);//rotates the quote every 2 seconds for 100 times
rotateTimer.addEventListener("timer", rotateQuote);//add a listener to the timer
rotateTimer.start();// start the timer
function init():void {
var quotesXML:XML = new XML();
quotesXML.ignoreWhitespace = true;
var XMLURL:URLRequest = new URLRequest("flash/quotes1.xml");
var myLoader:URLLoader = new URLLoader(XMLURL);
myLoader.addEventListener("complete", xmlLoaded);
function xmlLoaded(event:Event):void {
quotesXML = XML(myLoader.data);
totalQuotes = quotesXML.quote.length();
for (var i:int = 0; i < quotesXML.quote.length(); i++) {
quote[i] = quotesXML.quote[i].text;
}
var initRandom:Number = randomNumber(0, totalQuotes);
Tweener.addTween(quoteMC, {alpha:1, time:5});
quoteMC.quote_txt.text = String(quote[initRandom]);
}
}
function rotateQuote(evt:TimerEvent) {
quoteMC.alpha = 0;
Tweener.addTween(quoteMC, {alpha:1, time:5});
quoteMC.quote_txt.text = "";
var randomness:Number = randomNumber(0, totalQuotes);
quoteMC.quote_txt.text = quote[randomness];
}
function randomNumber(low:Number, high:Number):Number {
var low:Number = low;
var high:Number = high;
return Math.round(Math.random() * high - low) + low;
}
init();
I couldn't find a similar code to understand why it's wrong.
I'm totally new at as3 so any help will be welcome.
Thanks in advance.
BTW, the error only shows at IE, in Firefox it seems ok.