[javascript] Ne fonctionne que sous IE

Bonjour!!

laissez moi ici exprimer ma nobitude:
je reprends en ce moment un vieux trucs que j’avais bricolé il y a quelques années.
une page html alacon qui contient un javascript pour animer un bouzin…

suaf que,le javascript n’est pas de moi, juste adapté à mes besoins.

jusqu’ici tout va bien, le truc tourne niquel sur le poste de warzazate(mon aimé collègue)
sauf que moi je roxxe et j’utilise FF
donc quand j’ai voulu voir ce que ça donne , bah ça donne rien .

conscient que mes explications sont ténébreuses (à jeun de café depuis ce matin)
je vous montre ici le truc

[html]

A:hover { BACKGROUND-COLOR: orange } TABLE.nav TD { BACKGROUND-COLOR: aqua; BORDER-BOTTOM: silver 3px outset; BORDER-LEFT: silver 3px outset; BORDER-RIGHT: silver 3px outset; BORDER-TOP: silver 3px outset; COLOR: white; FONT: bold 9pt Arial; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px; WIDTH: 100px } TABLE.nav TD A { COLOR: white; FONT: bold 9pt Arial; TEXT-DECORATION: none } TABLE.nav TD A:hover { BACKGROUND-COLOR: blue } TD#search { BACKGROUND-COLOR: #006600 } TD#help { BACKGROUND-COLOR: #cc6666 } A { TEXT-DECORATION: none } .fly { COLOR: #5050ff; FONT-FAMILY: arial; FONT-SIZE: 20px; POSITION: absolute; VISIBILITY: hidden; Z-INDEX: 2 } .logo { COLOR: #4646ff; FONT-FAMILY: comic; FONT-SIZE: 60px; LEFT: 175px; POSITION: absolute; TOP: 0px; VISIBILITY: visible; Z-INDEX: 1 } .desc { COLOR: #6464ff; FONT-FAMILY: arial; FONT-SIZE: 15px; LEFT: 175px; POSITION: absolute; TEXT-ALIGN: center; TOP: 220px; VISIBILITY: hidden; WIDTH: 400px } BODY {

}
P {

}
A {
COLOR: #a6caf0
}


moteur de recherche
encyclopedie en ligne
cafzone
dtc
les liens qui poutrent
LE moteur de recherche qu'il est bieng
encyclopedie du Geek
le site qui poutre du poney
un site de gayzor pour les gayzors
[/html]

alors, je sais que cela n’est pas forcément trés propre , j’assume ma noobitude, merci.
j’ai essayer le validateur html fourni par moe, mais il fait rien qu’a m’embeter, avec son utf-8, et que ma page est pourri, et tout

Sauf que sous IE, ça marche bien, je recherche pas le code ultime, je veux juste que ça fonctionne aussi sous FF.
alors si vous aviez 30 secondes pour jeter un oeil au truc, et m’orienter sur le truc qui coince, je vous serez trés reconnaissant.

d’avance merci

ps: je sais ,en plus d’etre un noob, j’ai des gouts de chie pour les animations javascript.
Edit: tiens mon indentation est partie aux putes…(et la balise codebox spabien)

Alors un truc pour le JS sous FF :

Tu as une console Javascript, forte utile pour débugguer les erreurs JS. Tu y accèdes par Outils > Console d’erreur (tu peux virer les infos sur les CSS).
Je te conseille même l’extension Firebug, plus facile à utiliser et plus performante que la console JS de base…

Quelle(s) erreur(s) apparai(ssen)t sur ta page alors ?

[quote=“rorotaz, post:2, topic: 31375”]Alors un truc pour le JS sous FF :

Tu as une console Javascript, forte utile pour débugguer les erreurs JS. Tu y accèdes par Outils > Console d’erreur (tu peux virer les infos sur les CSS).
Je te conseille même l’extension Firebug, plus facile à utiliser et plus performante que la console JS de base…

Quelle(s) erreur(s) apparai(ssen)t sur ta page alors ?[/quote]
super ce truc merci!!!

alors firebug me trouve une erreur:
line 68: company has no properties

c’est déjà une piste…maintenant reste à trouver ce que ce “properties” signifie

Que signifie “bidule has no properties” sous JS ?
Tout simplement que ton objet bidule est vide. En Java, c’est un peu comme un NullPointerException.

Pourquoi ton company est vide ?
Parce qu’il ne le trouve pas dans ton document, du moins en utilisant le code JS défini pour les broutineurs autres que IE.
Dans ton cas, je te recommande d’écrire ta fonction slideLogo comme ça :

function slideLogo(from, to) { var company = document.getElementById("company"); if (company) { // Ici je teste l'existence de l'objet, histoire de ne pas lever d'erreur en cas de non trouvage d'objet... if (from < to) { company.style.top = (from += 10); setTimeout('slideLogo(' + from + ',' + to + ')', 75); } else { initObjects(); } } }

Et à la fin de ton code, tu peux me gicler la ligne suivante :

vu que la variable company n’est jamais utilisée ailleurs que dans slideLogo, autant ne pas la mettre en variable globale.

Je te conseille de procéder de même avec les autres variables…

Dis moi si ça passe (je fais ça à la ouanegaïne, donc le bug-free n’est pas assuré B) )

Je crois que le document.all ne fonctionne que sous IE. Je pense que la plus part de tes problemes viennent de la

Des news wackelwease ?
Si résolu, pense à ajouter le tag [RESOLU]…

[quote=“rorotaz, post:6, topic: 31375”]Des news wackelwease ?
Si résolu, pense à ajouter le tag [RESOLU]…[/quote]
j’ai planché la dessus une bonne partie de la journée.

le mieux c’est qu’avec ton bout de code, l’erreu sur “company” n’apparait plus B)

le hic c’est qu’en fait, il en trouve une autre, puis une autre…etc
si bien qu’à la fin,j’avais tellement modifier de truc…que ça marchait même plus sous IE ^^ B)
donc , pour l’heure, je me suis orienté sur une detection/redirection pour les utilisateurs de FF
mais bon, ça fait franchemnt petit bras…
d’ici ce week-end, j’aurais plus le temps…donc je up le truc lundi pour vous dire quoi et qu’est-ce