Probleme entre deux fonctions javascript

Bonjour,

Je vous explique mon problème, en fait j'ai un menu déroulant sur le coté en javascript, et un autre endroit ou tous mes partenaires défilent toujours grâce au javascript. (je récupère mes partenaire par du php). Jusque la tout va bien...

Le problème est que depuis que j'ai intégré ds la même page que mon menu les partenaires qui defilent, et bien mon menu n'est plus déroulant, les sous menus apparaissent sans qu'on ait cliqué sur le menu principal.
Çà fait a peu prés ça si vous voulez :

Menu1
Sous-Menu1.1
Sous-Menu1.2
Menu 2
Sous-Menu2.1
Sous-Menu2.2
........etc

Je pense qu'il doit y avoir un problème entre des fonctions javascript que j'importe, mais impossible de trouver ou !!!

Voici le code utilisé :
-------> script du menu
<script type="text/javascript">
<!--
window.onload=montre;
function montre(id) {
var d = document.getElementById(id);
for (var i = 1; i<=10; i++) {
if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
}
if (d) {d.style.display='block';}
}
//-->
</script>

----> script des partenaires
<SCRIPT LANGUAGE="JavaScript">
<!--
var timeDelay = 3;
var Pix = new Array
("tableau ac ts les partenaires");
var howMany = Pix.length;
timeDelay *= 1000; //conversion en secondes
var PicCurrentNum = 0;
var PicCurrent = new Image();
PicCurrent.src = Pix[PicCurrentNum];
function startPix() {
setInterval("slideshow()", timeDelay);
}
function slideshow() {
PicCurrentNum++;
if (PicCurrentNum == howMany) {
PicCurrentNum = 0;
}
PicCurrent.src = Pix[PicCurrentNum];
document["ChangingPix"].src = PicCurrent.src;
}
// End -->
</script>

Et dans ma page principal mon body :
<body OnLoad="startPix();">

Voila qqch dans tout ca, fait buger mon menu ! Mais quoi ?!

Merci de votre aide :)
Configuration: Windows XP
Firefox 2.0.0.15

2 réponses

  1. Salut,

    <script type="text/javascript">
    <!--
    window.onload=montre();
    function montre(id) {
    var d = document.getElementById(id);
    for (var i = 1; i<=10; i++) {
    if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
    }
    if (d) {d.style.display='block';}
    }
    //-->
    </script>

    ----> script des partenaires
    <SCRIPT LANGUAGE="JavaScript">


    pourquoi ne mets tu pas les deux fonctions entre les mêmes balises <script

    mets:

    <script type="text/javascript" language="javascript">
    
    // tes deux fonctions
    
    </script>
    
    
    


    ensuite je pense que cette ligne window.onload=montre;

    lance la fonction montre ? alors il manque qq chose

    puisque ta fonction est function montre(id) {

    il te faut les parenthèses et l'id concerné

    window.onload=montre('id_.....');


    @lain
    1. Simplement :
      <body OnLoad="startPix();">
      et
      window.onload=montre; 
      sont en conflit...

      Enleve le
       OnLoad="startPix();" 
      de ton body

      Et modifie
      window.onload=montre; 
      par
      window.onload = function () {
      montre;
      startPix();
      }