Oui c'est ce qui me semble le plus juste.
Seulement j'ai pas du tout de notions JS, c'est un ami qui s'en occupe, je vais faire l'intermédiaire pour expliquer le problème.
Tout d'abord,
<script src="realisations.js" type="text/javascript"></script>
si ce code se trouve avant le doctype, firefox et ie l'affiche comme il le faut (seulement IE bug a cause du quirks mode).
Par contre, si on met le script dans le head la ou il devrait être, firefox l'interprète très mal (et la sous ie, y'a pas de problème).
Voici le code de "realisations.js":
var bleueOpen = true;
var roseOpen = true;
var verteOpen = true;
var jauneOpen = true;
function down(id)
{
setTimeout(function(){ document.getElementById(id).style.display = 'block'; }, 0);
setTimeout(function(){ document.getElementById(id).style.height = 5; }, 0);
setTimeout(function(){ document.getElementById(id).style.height = 10; }, 30);
setTimeout(function(){ document.getElementById(id).style.height = 15; }, 60);
setTimeout(function(){ document.getElementById(id).style.height = 20; }, 90);
setTimeout(function(){ document.getElementById(id).style.height = 25; }, 120);
setTimeout(function(){ document.getElementById(id).style.height = 30; }, 150);
setTimeout(function(){ document.getElementById(id).style.height = 35; }, 180);
setTimeout(function(){ document.getElementById(id).style.height = 40; }, 210);
setTimeout(function(){ document.getElementById(id).style.height = 45; }, 240);
setTimeout(function(){ document.getElementById(id).style.height = 50; }, 270);
setTimeout(function(){ document.getElementById(id).style.height = 55; }, 300);
setTimeout(function(){ document.getElementById(id).style.height = 60; }, 330);
setTimeout(function(){ document.getElementById(id).style.height = 65; }, 360);
setTimeout(function(){ document.getElementById(id).style.height = 70; }, 390);
setTimeout(function(){ document.getElementById(id).style.height = 75; }, 420);
setTimeout(function(){ document.getElementById(id).style.height = 80; }, 450);
}
function up(id)
{
setTimeout(function(){ document.getElementById(id).style.height = 75; }, 0);
setTimeout(function(){ document.getElementById(id).style.height = 70; }, 30);
setTimeout(function(){ document.getElementById(id).style.height = 65; }, 60);
setTimeout(function(){ document.getElementById(id).style.height = 60; }, 90);
setTimeout(function(){ document.getElementById(id).style.height = 55; }, 120);
setTimeout(function(){ document.getElementById(id).style.height = 50; }, 150);
setTimeout(function(){ document.getElementById(id).style.height = 45; }, 180);
setTimeout(function(){ document.getElementById(id).style.height = 40; }, 210);
setTimeout(function(){ document.getElementById(id).style.height = 35; }, 240);
setTimeout(function(){ document.getElementById(id).style.height = 30; }, 270);
setTimeout(function(){ document.getElementById(id).style.height = 25; }, 300);
setTimeout(function(){ document.getElementById(id).style.height = 20; }, 330);
setTimeout(function(){ document.getElementById(id).style.height = 15; }, 360);
setTimeout(function(){ document.getElementById(id).style.height = 10; }, 390);
setTimeout(function(){ document.getElementById(id).style.height = 5; }, 420);
setTimeout(function(){ document.getElementById(id).style.height = 0; }, 450);
setTimeout(function(){ document.getElementById(id).style.display = 'none'; }, 450);
}
function effetload()
{
document.getElementById(2).style.display = 'none';
document.getElementById(3).style.display = 'none';
document.getElementById(4).style.display = 'none';
}
function effet(id)
{
if (id == 1 && bleueOpen)
{
down(1);
bleueOpen = false;
if (!roseOpen) { up(2); roseOpen = true; }
if (!verteOpen) { up(3); verteOpen = true; }
if (!jauneOpen) { up(4); jauneOpen = true; }
}
else if (id == 1)
{
document.getElementById(2).style.display = 'none';
document.getElementById(3).style.display = 'none';
document.getElementById(4).style.display = 'none';
up(1);
bleueOpen = true;
}
if (id == 2 && roseOpen)
{
down(2);
roseOpen = false;
if (!bleueOpen) { up(1); bleueOpen = true; }
if (!verteOpen) { up(3); verteOpen = true; }
if (!jauneOpen) { up(4); jauneOpen = true; }
}
else if (id == 2)
{
document.getElementById(1).style.display = 'none';
document.getElementById(3).style.display = 'none';
document.getElementById(4).style.display = 'none';
up(2);
roseOpen = true;
}
if (id == 3 && verteOpen)
{
down(3);
verteOpen = false;
if (!bleueOpen) { up(1); bleueOpen = true; }
if (!roseOpen) { up(2); roseOpen = true; }
if (!jauneOpen) { up(4); jauneOpen = true; }
}
else if (id == 3)
{
document.getElementById(1).style.display = 'none';
document.getElementById(2).style.display = 'none';
document.getElementById(4).style.display = 'none';
up(3);
verteOpen = true;
}
if (id == 4 && jauneOpen)
{
down(4);
jauneOpen = false;
if (!bleueOpen) { up(1); bleueOpen = true; }
if (!roseOpen) { up(2); roseOpen = true; }
if (!verteOpen) { up(3); verteOpen = true; }
}
else if (id == 4)
{
document.getElementById(1).style.display = 'none';
document.getElementById(2).style.display = 'none';
document.getElementById(3).style.display = 'none';
up(4);
jauneOpen = true;
}
}
Ce thread devrait peut être maintenant se trouver sur
JavaScript, ECMAScript, DOM.
Merci d'avance pour celui qui a une idée du pourquoi du comment. Moi et mon pote on est un peu dépassé.
Modifié par Scrapy (18 May 2009 - 23:00)