Rotation bannière, importation JS
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:
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:
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 :)