2014-02-26 51 views
0

我正在开发AS3中的一个小应用程序。 每天,你可以看到一个新的形象。每天传递到下一个图像

我已经得到了我在服务器上的所有图像。

这里是我的时刻代码:

var imageLoader:Loader = new Loader(); 

var days:Array = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]; 
var my_date:Date = new Date(); 
trace(days[my_date.day]); 
startBtn.addEventListener(MouseEvent.CLICK, LoadImage, false, 0, true); 

function LoadImage(event:MouseEvent):void{ 
    var image:URLRequest = new URLRequest ("http://www.blabla.com/images/12.jpg"); 
     imageLoader.load(image); 
     addChild (imageLoader); 
} 

是否可以告诉代码去下一个图像(13.jpg)第二天?每天都这样(第二天= 14.jpg,第二天= 15.jpg ....等)。

你知道一种方法吗?

非常感谢您的帮助,

+0

所以7张图像,一个星期的每一天? – mfa

+0

是的,但整年(我的服务器上有365张图片) – user2421975

+0

所以你想要它在一年中的每一天?这些文件的命名规则是从1到365? (也许366是谨慎的) – mfa

回答

0

下面的代码应该这样做。我从这里抓取了getDayOfYear函数:siafoo.net

我会稍后在函数中发布一些优化。

function getDayOfYear(date:Date):Number { 
    var monthLengths:Array = new Array (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); 
    // A leap year is divisable by 4, but not by 100 unless divisable by 400. 
    if (((date.getFullYear() % 4 == 0) && (date.getFullYear() % 100 != 0)) || (date.getFullYear() % 400 == 0)) { 
     monthLengths[1] = 29; 
    } 

    var dayInYear = 0; 
    // get day of year up to month 
    for (var i:Number = 0; i < date.getMonth(); i++) { 
    dayInYear += monthLengths[i]; 
    } 

    // add day inside month 
    dayInYear += date.getDate(); 

    // Start counting on 0 (optional) 
    // dayInYear--; 

    return dayInYear; 
} 


function LoadImage(event:MouseEvent):void{ 
    var image:URLRequest = new URLRequest ("http://www.blabla.com/images/"+getDayOfYear(new Date())+".jpg"); 
    imageLoader.load(image); 
    addChild (imageLoader); 
} 
+0

非常感谢 – user2421975

+0

如果我的文件名被命名为1,2,3..ect ? – user2421975

+0

我有这个错误:Erreur d'ouverture de l'URL'http://www.cocogeek.fr/downloads/null.jpg' 错误#2044:IOErrorEvent non pris en charge:text = Error#2036: Le chargement n'a pasétéachevé。 – user2421975

相关问题