Bonjour,
Je souhaite changer la propriété display des blocks dans ma page, le but etant de faire comme une fonction ‘suivant’. Lors d’un clic sur ma balise
j’appelle une fonction qui vient changer la propriété display de deux blocks : un “actuel” affiché en ce moment et un autre “next” a afficher a la place d’ "actuel ". J’ai indéxé les ‘id’ de mes blocks dans un tableau et ensuite je ne parviens pas a faire ce que je veux… Voila mon code.
function browseNext(){
var tabId = new Array();
var numblock=1;
for (i=0; i<=3; i++){
tabId[i] = “b”+numblock;
numblock++;
}
var evt = document.createEvent(“MouseEvents”); // créer un évennement souris
evt.initMouseEvent(“click”, true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); // intiailser l’évennement déja crée par un click
var cb = document.getElementById(“flechenext”); // pointer sur l’élement qui a l’id “checkbox”
var nbclicks=0;
while(numblock<5){
if(cb.dispatchEvent(evt)){
nbclicks++;
}
if(nbclicks=1){
var actu = document.getElementById(tabId[0]);
var next = document.getElementById(tabId[1]);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
}else if (nbclicks=2){
var actu = document.getElementById(tabId[1]);
var next = document.getElementById(tabId[2]);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
} else if (nbclicks=3){
var actu = document.getElementById(tabId[2]);
var next = document.getElementById(tabId[3]);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
} else if (nbclicks=4){
var actu = document.getElementById(tabId[3]);
var next = document.getElementById(tabId[4]);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
} else {
var actu = document.getElementById(tabId[0]);
var next = document.getElementById(tabId[1]);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
}
}
Merci de vos aides…
Voila aussi mon HTML:
Je précise que la fonction marche lorsque j’appelle directement les identificateurs comme ceci:
function browseNext(){
var actu = document.getElementById(“b1”);
var next = document.getElementById(“b2”);
actu.setAttribute(“style”,“display:none”);
next.setAttribute(“style”,“display:block;width:120px;height:370px”);
}
Merci !
Edité le 26/11/2009 à 14:42
J’ai corrigé une erreur deja… c’est :
car le parametre de getElementById est “b1” et pas b1 ou b2 etc…