OVH Cloud OVH Cloud

Position absolute

3 réponses
Avatar
Crestetto Claude
Bonjour,

Ce script de menu déroulant:

<!-- Position du menu de la barre de navigation gauche -->

function menu_build() {
for (x in menuoptions) {
subopts=menuoptions[x].length;
vpos=110+(x*18); <!-- vpos= réglage de la
position du texte du menu de la barre de navigation -->
for (y in menuoptions[x]) {
t=menuoptions[x][y].split('|');
if(y==0) {
document.write ('<span class="menuspan" style="position:
absolute; top: ' + vpos + ';">&nbsp;&nbsp;');
document.writeln ('<span class="menuhead"
id="menuhead'+x+'" unselectable="on">'+t[0]+'</span>');
if(subopts>1) document.writeln ('<span id="menu'+x+'"
class="menu"><table width="'+t[2]+'" border="0" cellspacing="0"
cellpadding="0">');
}
else {
document.writeln ('<tr><td class="menuopt"
id="'+x+'.'+y+'" unselectable="on">'+t[0]+'</td></tr>');
}
}
if(subopts>1) document.writeln('</table></span>');
document.write('</span>');
}
}

fonctionne très bien avec Internet Explorer, mais pas avec Netscape et
Firefox( il ne charge pas la barre de navigation et plante avant le
chargement complet de la page). Si l'on retire: position:absolute, il ne
plante plus, mais n'affiche pas la barre de navigation au bon endroit.

Quelqu'un peut-il m'aider à faire fonctionner ce script sur tous les
navigateurs.
Voici ce qui vient après:

function menu_addevents() {
for (x in menuoptions) {
eval('menuhead'+x+'.onmouseover = menuhead_rollon');
eval('menuhead'+x+'.onmousedown = menu_mousedown');
eval('menuhead'+x+'.onmouseup = menu_mouseup');
eval('menuhead'+x+'.onclick = menu_mouseclick');
if (menuoptions[x].length>1) {
eval('menu'+x+'.onmouseout = menu_rolloff');
eval('menu'+x+'.onmouseover = menu_rollon');
eval('menu'+x+'.onmousedown = menu_mousedown');
eval('menu'+x+'.onmouseup = menu_mouseup');
eval('menu'+x+'.onclick = menu_mouseclick');
}
}
document.onmouseover=document_mouseover;
}

<!--
-------------------------------------------------------------------------------------------------->
<!-- MENU DEROULANT DE LA BARRE DE NAVIGATION -->
<!----------------------------------------------->

<!----------------------------------------------------------------------------------------------------->
menuoptions=new Array(
new
Array("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACCUEIL|index.php|180"),


new Array("&nbsp;&nbsp;&nbsp;Informations|informations.html|180",
"&nbsp;&nbsp;&nbsp;Informations générales|informations.html|180",

new Array("&nbsp;&nbsp;&nbsp;flash|flash_m.php|180",


etc......



);
menu_build();
menu_addevents();
</script>

Sous Netscape, il affiche "ACCUEIL", mais c'est tout, il plante
immédiatement après...

Cordialement,
Claude.

3 réponses

Avatar
Patrice Trognon
Crestetto Claude wrote:

Bonjour,

Ce script de menu déroulant:

<!-- Position du menu de la barre de navigation gauche -->

function menu_build() {
....


Hi,

JavaScript n'a rien a voir avec Java :)
--

Patrice Trognon
http://www.javadevel.com

Avatar
Rene Mouchot
opa,
c'est du javascript que vous nous fournissez la. Le forum est consacre
a java, ce qui, vous serez peut etre surpris de l'apprendre, n'a rien a
voir avec javascript.

cordialement itou,
--
Rene Mouchot
Avatar
Crestetto Claude
Veuillez m'excuser, je me suis trompé de forum.

Claude.