Bonjour,

Je ne connais rien à js mais un ami m'a fait un menu qui est lié à un js dont la première ligne est:

var dureeRetard=200000;

Ensuite, cette variable est appelée une seule fois (voir dernière ligne ci-dessous):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
        //déclaration des fonctions onmouseover et onmouseout des lments LI
        var sfEls = document.getElementById("nav").getElementsByTagName("li");
        for (var i=0; i<sfEls.length; i++) {
                sfEls[i].onmouseover=function() {
                        survol=true;
                        this.className+=" highlight";
                        switchMenu(this);
                }
                sfEls[i].onmouseout=function() {
                        survol=false;
                        if (this.className=="highlight") { //bug FF: si pas de nom de classe, le " " initial n'est pas insr !!!
                                this.className=this.className.replace(new RegExp("highlight\\b"), "");
                        } else {
                                this.className=this.className.replace(new RegExp(" highlight\\b"), "");
                        }
                        if (nbDeclencheur<6) {nbDeclencheur++;setTimeout('fermetureRetardee()',dureeRetard)};
                }
        }
Je ne remets absolument pas en cause le code de cet ami, mais de fait, si je mets la variable dureeRetard à 20000 par exemple, seul IE la prend en charge.

Firefox, Opera et Konqueror continuent à fermer les menus à peu près au bout de 2 secondes.

Y a t-il quelque chose de particulier à faire pour ces navigateurs ?

Cordialement

Pascal