Conflit entre deux javascripts - Javascript

Bonjour à tous,

Pourriez-vous m’aider sur un problème que je n’arrive pas à résoudre s’il vous plais.
J’essais d’intégrer deux menus dynamiques pour mon futur site, et il se trouve que séparément les menus fonctionnent

correctement, mais une fois mis sur la même page, cela génère un conflit et donc des erreurs…
:frowning:

Voyez par vous-même:

Les menus séparés

Les deux menus ensemble:
Menus de gauche et du haut

:frowning: :frowning: :frowning: :frowning:

En vous remerciant par avance! :slight_smile:


Voici les fichiers auquels ils sont reliés:
Menu de gauche:
data-menugauche.js (fichier principal)
/menugauche.files/dmenu.js
/menugauche.files/dmenu_add.js
/menugauche.files/dmenu_ajax.js
/menugauche.files/dmenu_cf.js
/menugauche.files/dmenu_dyn.js
/menugauche.files/dmenu_key.js
/menugauche.files/dmenu_popup.js
/menugauche.files/dmenu4.js

Pour le menu du haut, il s’agit exactement du même script mais en horizontal:
data-menuhaut.js (fichier principal)
/menuhaut.files/dmenu.js
/menuhaut.files/dmenu_add.js
/menuhaut.files/dmenu_ajax.js
/menuhaut.files/dmenu_cf.js
/menuhaut.files/dmenu_dyn.js
/menuhaut.files/dmenu_key.js
/menuhaut.files/dmenu_popup.js
/menuhaut.files/dmenu4.js

… Et pour terminer, voici les scripts que je rajoute dans la page html:

Pour le menu de gauche:

</noscript>
  <script type="text/javascript">var dmWorkPath="menugauche.files/";</script>
  <script type="text/javascript" src="menugauche.files/dmenu.js"></script>

  <!-- Code for Deluxe Menu Items. Generated by Deluxe Tuner -->
  <div id="dmlinks" style="font:normal 11px arial;color:#FFFFFF;text-decoration:none">
     <a id="dmI0" href="http://mixxradio.free.fr/news/" target="frame">NEWS</a>
     <a id="dmI1" href="preview.htm" target="frame" title="Travaux en cours">PREVIEW</a>
     <a id="dmI16" href="http://mixxradio.free.fr/fondecran/index.php" target="frame">FONDS D'ÉCRAN</a>
     <a id="dmI17" href="http://mixxradio.free.fr/xlagenda327/index.php">AGENDA</a>
     <a id="dmI19" href="http://www.google.com" target="_blank">Google</a>
     <a id="dmI20" href="http://vitasse3d.com" target="_blank">Vitasse3D</a>
     <a id="dmI21" href="http://www.laurentgarnier.com" target="_blank">Le Shampooineur</a>
     <a id="dmI22" href="http://mixxradio.free.fr/livre.php" target="frame">LIVRE D'OR</a>
     <a id="dmI23" href="bb.htm">LA BELLE<br>ET LA BÊTE</a>
  </div>
  <!-- End of Code for Deluxe Menu Items -->

  <!-- (c) 2007, Deluxe-Menu.com -->
   
<p>

<script type="text/javascript" src="data-menugauche.js"></script>

Pour le menu du haut:

</noscript>
  <script type="text/javascript">var dmWorkPath="menuhaut.files/";</script>
  <script type="text/javascript" src="menuhaut.files/dmenu.js"></script>

  <!-- Code for Deluxe Menu Items. Generated by Deluxe Tuner -->
  <div id="dmlinks" style="font:normal 11px arial;color:#FFFFFF;text-decoration:none">
     <a id="dmI0" href="http://mixxradio.free.fr/news/" target="frame">NEWS</a>
     <a id="dmI1" href="preview.htm" target="frame" title="Travaux en cours">PREVIEW</a>
     <a id="dmI16" href="http://mixxradio.free.fr/fondecran/index.php" target="frame">FONDS D'ÉCRAN</a>
     <a id="dmI17" href="http://mixxradio.free.fr/xlagenda327/index.php">AGENDA</a>
     <a id="dmI19" href="http://www.google.com" target="_blank">Google</a>
     <a id="dmI20" href="http://vitasse3d.com" target="_blank">Vitasse3D</a>
     <a id="dmI21" href="http://www.laurentgarnier.com" target="_blank">Le Shampooineur</a>
     <a id="dmI22" href="http://mixxradio.free.fr/livre.php" target="frame">LIVRE D'OR</a>
     <a id="dmI23" href="bb.htm" target="frame">LA BELLE ET LA BÊTE</a>
  </div>
  <!-- End of Code for Deluxe Menu Items -->

  <!-- (c) 2007, Deluxe-Menu.com -->
   
<p>

<script type="text/javascript" src="data-menuhaut.js"></script>

<script type="text/javascript">var dmWorkPath="menugauche.files/";</script>
et
<script type="text/javascript">var dmWorkPath="menuhaut.files/";</script>

Les deux menus définissent la même variable pour indiquer où sont placés leur fichiers (et il y a fort à parier que les autres variables utilisées par ces menus ont le même nom).
Bref, à moins de renommer les variables dans leurs fichiers js respectifs, ils sont clairement incompatibles :wink:

Bonjour,
ça m’a fait un peu sourire la redéfinition des méthodes standards des String et des Array, mais en fait le code est obfuscé :smiley:


// Obfuscated by Javascript Obfuscator

mais c’est peut-être simplement un conflit sur les id dans les menus: “dmI0” par exemple.

il faut mettre des id différents sur les 2 menus.