Le DVD vidéo de Florent V. :

Elephorm apprendre XHTML et CSS
Auteur
anatalsceo
# 27 Aug 2007 - 18:07:58
Citer
11 Posts
bonjour,
j'ai une fonction javascript qui utilise les bibliothèques scriptaculous pour faire des slides de menus. le but est de faire que les deux menus ne se chevauchent pas, donc de jouer sur le zindex. voici le code de la fonction :



var slidingBottom = true;

function slidingTab() {
var panels = document.getElementsByClassName('panelHaut');
/*bodyPanels[0].hide();*/
/*panels[0].style.position ='absolute';*/
panels[0].style.top = -100;

Event.observe("image", 'click', slidingFunction, false);

}

function slidingFunction() {

/*Effect.toggle ('desc','slide');*/

var panels = document.getElementById('desc');
var bodyPanels = document.getElementsByClassName('panel_body');


if (slidingBottom == true) {

if (slidingTop == true) new Effect.SlideUp(bodyPanels[0]);

new Effect.SlideDown('desc');
slidingBottom = false;
slidingTop = false;
}

else {
new Effect.SlideUp('desc');
slidingBottom = true;
}



}

Event.observe(window, 'load', slidingTab, false);




le div de <i>className panelHaut</i> a en positionnement relatif. Je voudrais donc que sur le click de ce bouton ce div soit positionné en premier plan.
dans le fonction <i>slidingFunction</i> j'ai essayé d'ajouter

document.getElementsByClassName('panelHaut').style.zIndex=0;

mais ca ne fonctionne pas.

Quelqu'un aurait-il une idée ?


code
Modifié par anatalsceo (03 Sep 2007 - 09:28)

http://www.anatal-pro.com aim 
^
MoOx
# 31 Aug 2007 - 10:17:52
Citer
L'habit ne fait pas le moine
93 Posts
document.getElementsByClassName('panelHaut') te retourne un tableau d'éléments, tu ne peux donc pas lui appliquer un style.

Avec JQuery ça aurait été carrément plus facile car cette librairie te permet d'appliquer des méthodes sur plusieurs élements d'un coup. Ex:
$('.panelHaut').css({zIndex: 0});


Programmeur n.m : Celui qui résout un problème que vous n'aviez pas, d'une façon que vous ne comprenez pas.

http://mr.moox.fr/ msn 
^
anatalsceo
# 03 Sep 2007 - 09:29:38
Citer
11 Posts
J'ai trouvé. Attention, pour que cela fonctionne, il faut que votre div soit en position relative ou absolue.


$('panelBas').setStyle({'z-index':'1'});


http://www.anatal-pro.com aim 
^
skywalk3r
# 04 Sep 2007 - 19:08:47
Citer
"Je suis son fils!!!"
333 Posts
Salut


var arPanelHaut = document.getElementsByClassName('panelHaut');
for(i=0;i<arPanelHaut.length;i++){
arPanelHaut[i ].style.zIndex = 0;
}

Modifié par skywalk3r (04 Sep 2007 - 19:09)

C'est l'taaaaalent ça M'sieur dame!!!

http://www.watch-me.fr 
^
Powered by Phedio v3.8.5 beta in 5.6 ms © dew