Bonjour,


J'ai un Javascript qui permet de faire tourner les bannières, jusque là tout va bien.

Pour certains produits, j'aurais besoin de faire appel à un fichier .JS aléatoirement, je m'explique : La rotation des bannières se fait par défaut avec un lien URL dans une image, certains portails mettent ce qu'on appelle des "Pools" qui ne sont qu'un réservoir de bannières référencées sous un seul code Javascript.

Pour être plus clair, voici l'exemple de mon code de rotation de bannière :
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 
function rotateBanniere(prev, duree) {
            // Les bannières
            // Le format est
            //   infosBannieres[<Index Bannière>]["url"] = <URL du lien>
            //   infosBannieres[<Index Bannière>]["alt"] = <Texte descriptif>
            //   infosBannieres[<Index Bannière>]["banner"] = <URL de l'image>
            //   infosBannieres[<Index Bannière>]["width"] = <Largeur (en pixel)>
            //   infosBannieres[<Index Bannière>]["height"] = <Hauteur (en pixel)>
            var infosBannieres = new Array();
            // Bannière 1
            infosBannieres[1] = new Array();
            infosBannieres[1]["url"] = "https://machin";
            infosBannieres[1]["alt"] = "Rising Antivirus";
            infosBannieres[1]["banner"] = "machin.gif";
            infosBannieres[1]["width"] = "728";
            infosBannieres[1]["height"] = "90";
 
            // Bannière 2
            infosBannieres[2] = new Array();
            infosBannieres[2]["url"] = "http://bidule";
            infosBannieres[2]["alt"] = "F-Secure";
            infosBannieres[2]["banner"] = "http://bidule.gif";
            infosBannieres[2]["width"] = "728";
            infosBannieres[2]["height"] = "90";
 
var nbBannieresMax = infosBannieres.length;
 
            ////////////////////////////////////////////////////////////////////////////////////////////////
            // Par défaut, la bannière est la même que la précédente
            var banniere = prev;
            // On construit un objet Data Javascript
            var temps = new Date();
            // On initialise la date/heure à 0
            var secondes = 0;
 
            // On détermine la nouvelle bannière :
            //   - tirée au hasard en fonction de l'heure (dans la limite du nombre de bannières disponibles)
            //   - différente de 0
            // On récupère la date/heure
            secondes = temps.getSeconds(1);
            // Et on fait un modulo avec le nombre de bannières
            banniere = secondes % nbBannieresMax;
            if (banniere == 0) {
               banniere++;
            }
 
            // On récupère le div dans lequel on affiche les bannières
            var divBanniere = document.getElementById("divBannieresPub");
            // Et on modifie le contenu HTML de ce div en mettant notre nouvelle bannière
            divBanniere.innerHTML = '<a href="' + infosBannieres[banniere]["url"] + '" target="_blank"><img src="' + infosBannieres[banniere]["banner"] + '" width="' + infosBannieres[banniere]["width"] + 'px" height="' + infosBannieres[banniere]["height"] + 'px" alt="' + infosBannieres[banniere]["alt"] + '" border="0" /></a>';
 
            // On appelle la fonction des bannières toutes les X secondes
            window.setTimeout("rotateBanniere(" + banniere + ", " + duree + ")", (duree * 1000));
         }
Ce code est écrit dans bannieres.js.
Pour pouvoir utiliser le Pool, j'ai besoin de créer un fichier pool.js contenant le code de celui-ci et de faire appel à lui si par exemple le programme tirait le numéro 3.

Le pool.js contient ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
var uri = 'http://machin' + new String (Math.random()).substring (2, 11);
document.write('<sc'+'ript type="text/javascript" src="'+uri+'" charset="ISO-8859-1"></sc'+'ript>');

Merci beaucoup