installation d'un javascript

2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu installation d'un javascript

Message par MlleAlys Dim 16 Mar 2014 - 13:18

Bonjour,

Voilà je suis tombée sur un petit souci, et comme le javascript ce n'est pas (encore?) mon truc, j'ai du mal à comprendre... What's happen ?!? 

Suite à un sujet j'ai recherché quelques codes de pluies d'étoiles pour curseur, je suis tombée sur pas mal de liens de codes hébergés qui ne sont plus valables, et puis sur celui-là :
Code:
<script type="text/javascript"> // <![CDATA[
var colour = "#000000";
var sparkles = 50;


var x = ox = 400;
var y = oy = 300;
var swide = 800;
var shigh = 600;
var sleft = sdown = 0;
var tiny = new Array();
var star = new Array();
var starv = new Array();
var starx = new Array();
var stary = new Array();
var tinyx = new Array();
var tinyy = new Array();
var tinyv = new Array();
window.onload = function () {
    if (document.getElementById) {
        var i, rats, rlef, rdow;
        for (var i = 0; i < sparkles; i++) {
            var rats = createDiv(3, 3);
            rats.style.visibility = "hidden";
            document.body.appendChild(tiny[i] = rats);
            starv[i] = 0;
            tinyv[i] = 0;
            var rats = createDiv(5, 5);
            rats.style.backgroundColor = "transparent";
            rats.style.visibility = "hidden";
            var rlef = createDiv(1, 5);
            var rdow = createDiv(5, 1);
            rats.appendChild(rlef);
            rats.appendChild(rdow);
            rlef.style.top = "2px";
            rlef.style.left = "0px";
            rdow.style.top = "0px";
            rdow.style.left = "2px";
            document.body.appendChild(star[i] = rats);
        }
        set_width();
        sparkle();
    }
}

function sparkle() {
    var c;
    if (x != ox || y != oy) {
        ox = x;
        oy = y;
        for (c = 0; c < sparkles; c++) if (!starv[c]) {
            star[c].style.left = (starx[c] = x) + "px";
            star[c].style.top = (stary[c] = y) + "px";
            star[c].style.clip = "rect(0px, 5px, 5px, 0px)";
            star[c].style.visibility = "visible";
            starv[c] = 50;
            break;
        }
    }
    for (c = 0; c < sparkles; c++) {
        if (starv[c]) update_star(c);
        if (tinyv[c]) update_tiny(c);
    }
    setTimeout("sparkle()", 40);
}

function update_star(i) {
    if (--starv[i] == 25) star[i].style.clip = "rect(1px, 4px, 4px, 1px)";
    if (starv[i]) {
        stary[i] += 1 + Math.random() * 3;
        if (stary[i] < shigh + sdown) {
            star[i].style.top = stary[i] + "px";
            starx[i] += (i % 5 - 2) / 5;
            star[i].style.left = starx[i] + "px";
        } else {
            star[i].style.visibility = "hidden";
            starv[i] = 0;
            return;
        }
    } else {
        tinyv[i] = 50;
        tiny[i].style.top = (tinyy[i] = stary[i]) + "px";
        tiny[i].style.left = (tinyx[i] = starx[i]) + "px";
        tiny[i].style.width = "2px";
        tiny[i].style.height = "2px";
        star[i].style.visibility = "hidden";
        tiny[i].style.visibility = "visible"
    }
}

function update_tiny(i) {
    if (--tinyv[i] == 25) {
        tiny[i].style.width = "1px";
        tiny[i].style.height = "1px";
    }
    if (tinyv[i]) {
        tinyy[i] += 1 + Math.random() * 3;
        if (tinyy[i] < shigh + sdown) {
            tiny[i].style.top = tinyy[i] + "px";
            tinyx[i] += (i % 5 - 2) / 5;
            tiny[i].style.left = tinyx[i] + "px";
        } else {
            tiny[i].style.visibility = "hidden";
            tinyv[i] = 0;
            return;
        }
    } else tiny[i].style.visibility = "hidden";
}
document.onmousemove = mouse;

function mouse(e) {
    set_scroll();
    y = (e) ? e.pageY : event.y + sdown;
    x = (e) ? e.pageX : event.x + sleft;
}

function set_scroll() {
    if (typeof (self.pageYOffset) == "number") {
        sdown = self.pageYOffset;
        sleft = self.pageXOffset;
    } else if (document.body.scrollTop || document.body.scrollLeft) {
        sdown = document.body.scrollTop;
        sleft = document.body.scrollLeft;
    } else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
        sleft = document.documentElement.scrollLeft;
        sdown = document.documentElement.scrollTop;
    } else {
        sdown = 0;
        sleft = 0;
    }
}
window.onresize = set_width;

function set_width() {
    if (typeof (self.innerWidth) == "number") {
        swide = self.innerWidth;
        shigh = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientWidth) {
        swide = document.documentElement.clientWidth;
        shigh = document.documentElement.clientHeight;
    } else if (document.body.clientWidth) {
        swide = document.body.clientWidth;
        shigh = document.body.clientHeight;
    }
}

function createDiv(height, width) {
    var div = document.createElement("div");
    div.style.position = "absolute";
    div.style.height = height + "px";
    div.style.width = width + "px";
    div.style.overflow = "hidden";
    div.style.backgroundColor = colour;
    return (div);
}
// ]] ></script>

Je ne m'y connais pas bien en javascript, et il y a une chose que je n'ai pas réussi à comprendre : Si je mets ce code tel quel sur ma page d'accueil (affichage > accueil > généralités), il fonctionne parfaitement. Sauf qu'il prend de la place.
Alors je me suis dite naivement, si je récupère juste le code entre les balises script et que le le met via modules > javascripts, ça fonctionnerait peut être ! Sauf que non ! xD (j'ai vérifié que l'index était bien coché dans les options du javascript, et que ces derniers étaient correctement activés, et qu'un autre javascript fonctionnait bien).
Par curiosité, j'ai essayé de mettre le code non plus dans la page d'accueil, mais dans le template de haut de page, et ça ne fonctionne pas non plus...

Donc voici ma question : pourquoi ? Et comment faire pour que le code puisse être directement installé via les modules > javascript ?



Le forum sur lequel j'ai testé est celui de mon profil : phpbb2, pas de templates modifiés, pas de css, aucun javascript dans les modules.

Merci d'avance ! =D


Dernière édition par MlleAlys le Dim 16 Mar 2014 - 15:06, édité 2 fois
MlleAlys

MlleAlys
Membre actif

Messages : 5767
Inscrit(e) le : 12/09/2012

MlleAlys a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: installation d'un javascript

Message par Adam_sfp Dim 16 Mar 2014 - 14:56

Bonjour

Vous pouvez utiliser cet outil ICI
Ce qui va compiler le code le réduire ,l'optimiser et détecter les erreurs éventuelles..
Collez votre code à gauche (sans les balises scripts),
cochez white space et pretty print puis cliquez compile

Récupérez le code à droite.

Cdt.
Adam_sfp

Adam_sfp
Membre actif

Masculin
Messages : 4465
Inscrit(e) le : 18/04/2008

http://antonyadam.kanak.fr
Adam_sfp a été remercié(e) par l'auteur de ce sujet.

Résolu Re: installation d'un javascript

Message par MlleAlys Dim 16 Mar 2014 - 15:06

*0*
ça fonctionne, merci beaucoup ! o/

je passe le sujet en résolu ^^
MlleAlys

MlleAlys
Membre actif

Messages : 5767
Inscrit(e) le : 12/09/2012

MlleAlys a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum