Bonjour à tous !
J'ai réalisé la fonction Flash suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
function nbElementSurPage(page,videopage){
 
    var ficVideo = new XML(); // Création d'un objet XML
    ficVideo.ignoreWhite = true;
    ficVideo.load("xml.xml");
 
    // Lors du chargement
    ficVideo.onLoad = function(status){
 
        var videos = this.childNodes[0]; // On se place sur l'élément videos
        var fils = videos.childNodes; // Récupération des fils du fichier
        var nbvideos = fils.length; // Nombre total de vidéos dans le XML
        var nbvideopage = 0; // Nombre de vidéos sur la page
 
        var present = false; // Indique la présence ou non de vidéos sur la page spécifiée
 
        // Parcours du fichier s'il y a des élèments
        if (nbvideos != 0){
            debut = ((page-1)*4)+1; // Numéro de la première vidéo de la page
 
            // Si la première vidéo de la page est inférieure au nombre total de vidéo, on peut compter
            if (debut <= nbvideos){
                nbvideopage = (nbvideos-debut)+1 // Nombre de vidéos suivant la première de la page
 
                // S'il y a plus de vidéo restante que de vidéos par page possible
                if (nbvideopage > videopage){
                    nbvideopage = videopage; // On retourne le nombre maximum de vidéos par page
                }
            }
        }
    }
 
    return nbvideopage;
}
Mon but est d'appeler cette fonction quand je le désire et de récupérer la valeur retournée.
Le problème c'est que tous les calculs sont effectués dans le onLoad. J'aimerais ne pas avoir ce onLoad et appeler les méthodes XML directement dans le fonction (j'ai vu sur developpez.com que c'était possible).

Le problème, c'est que les méthodes ne fonctionnent pas sans ce onLoad ...
J'ai essayé de faire un trace(ficVideo) après le load("xml.xml"), mais même ce trace me retourne un undefined ...

Je tourne en rond depuis quelques temps sur ce problème que je n'arrive pas à résoudre ... J'espère que vous pourrez m'aider ... Merci !