Probleme entre deux fonctions javascript

Alex7 -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
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 :)
A voir également:

2 réponses

Alkaaran Messages postés 285 Date d'inscription   Statut Membre Dernière intervention   37
 
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();
}
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
0