Ik heb hier een script welke uit een xml-bestand haalt welke filmpjes er in een map staan, en er vervolgens een afspeelt (random). Als deze klaar is met afspelen moet hij het xml-bestand opnieuw inladen en weer 1 afspelen. De reden dat hij deze opnieuw moet inladen is omdat er ondertussen een nieuw filmpje in de map kan staan...onderstaande code werkt 1 keer, hij speelt 1 filmpje af maar als hij klaar is dan stopt het script, hij start niet weer de functie getFiles(). als ik de code binnen deze functie buiten de functie zet, dan werkt hij wel, probleem is dan alleen dat hij nieuwe bestanden niet herkent omdat de XML dan veroudert is!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| function getFiles(){
xmlDoc = new XML();
xmlDoc.ignoreWhite = true;
xmlDoc.load("list.php");
fileListArray = new Array();
xmlDoc.onLoad = verwerkXML;
}
function verwerkXML(ok){
for (i=0; i<xmlDoc.firstChild.childNodes.length; i++) {
file = xmlDoc.firstChild.childNodes[i].attributes.name;
fileListArray[i]=file;
}
aantal=fileListArray.length;
wich=Math.floor(Math.random() * ((aantal-1) - 0)) + 0;
to_play=fileListArray[wich];
my_video.play("uploads/"+to_play);
var listenerObject:Object = new Object();
listenerObject.complete = function(eventObject:Object):Void {
getFiles();
};
my_video.addEventListener("complete", listenerObject);
}
getFiles(); |