Animation JS "au dessus" d'un flash

Signaler
Messages postés
407
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
11 avril 2008
-
Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
-
bonjour,

je voudrais faire defiller le script javascript suivant

*********
var snowsrc="**image**.gif"
var no = 15;
var ns4up = (document.layers) ? 1 : 0;
var ie4up = (document.all) ? 1 : 0;
var nn6up = (document.getElementById) ? 1 : 0;
var dx, xp, yp;
var am, stx, sty;
var i, doc_width 800, doc_height 600;

if (ns4up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
} else if (nn6up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();

for (i = 0; i < no; ++ i) {
dx[i] = 0;
xp[i] = Math.random()*(doc_width-50);
yp[i] = Math.random()*doc_height;
am[i] = Math.random()*20;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
if (ns4up) {
if (i == 0) {
document.write("<layer name=dot"+ i +" left=15 top=15 visibility=show></layer>");
} else {
document.write("<layer name=dot"+ i +" left=15 top=15 visibility=show></layer>");
}
} else if (ie4up || nn6up) {
if (i == 0) { document.write("

");
} else {
document.write("

");
}
}
}

function snowNS() {
for (i = 0; i < no; ++ i) {
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx[i] += stx[i];
document.layers["dot"+i].top = yp[i];
document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowNS()", 10);
}

function snowIE() {
for (i = 0; i < no; ++ i) {
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx[i] += stx[i];
document.all["dot"+i].style.pixelTop = yp[i];
document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowIE()", 10);
}

function snowNN6() {
for (i = 0; i < no; ++ i) {
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx[i] += stx[i];
document.getElementById("dot"+i).style.top = yp[i];
document.getElementById("dot"+i).style.left = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout("snowNN6()", 10);
}
if (ns4up) {
snowNS();
} else if (ie4up) {
snowIE();
} else if (nn6up) {
snowNN6();
}
*********

par dessus cette animation flash.

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="800" height="600">




</object>



sauf que la cela me met l'animation en javascript dessous de celle du flash (surement probleme de layer). mais je ne vois vraiment pas comment et ou je modifie cela.

quelqu'un pourrais me dire comment je peux faire afin d'avoir l'animation JS par dessus l'animation Flash ??? SVP

.merci beaucoup
.fey

3 réponses

Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
as tu essayé de modifier le z-index ?

rrk275
Messages postés
407
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
11 avril 2008

désolé pas compris ce que tu veux dire.

dans tous les cas quand je transforme le flash en gif, et que le positionne le gif cela marche nickel.

mais comme je disais avec le flash les flocons sont dessous au lieu d'être au dessus :((
Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
(z-index positionement dans l'axe des z a l'interieur permet justement de definir qui sera en haut et qui en bas....)
Bah dans ton script, ils mettent le z-index a 0 mais je pense qu'il faudrait changer cette valeur ( la mettre a 1 au moin ... )


PS : {meme si ce n'est pas ton code ...peut etre meme si tu ne sais pas coder ..}
if (i == 0) {
document.write("<layer name=dot"+ i +" left=15 top=15 visibility=show></layer>");
} else {
document.write("<layer name=dot"+ i +" left=15 top=15 visibility=show></layer>");
}
pourquoi faire un if ?? alors que l'on effectue les meme taches ...
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight; ?? pourquoi mettre ca dans une boucle alors que en plus on l'a fait au debut
faire un raffraichissement de la taille je veux bien mais la ...
pourquoi des setTimeout plutot que des setInterval?