Et bien, c'est pas bien compliqué !!!
Cette fonction retourne l'object direct de la balise souhaité à partir de son nom (name)
function getElt (eltID) {
if (document.layers) return document.layers[eltID+'C'].document.layers[eltID];
if (document.getElementById) return document.getElementById(eltID);
if (document.all) return document.all[eltID];
if (document[eltID+'C']) return document[eltID+'C'].document[eltID];
alert('Rien ne marche avec ce navigateur');
return false;
}
Cette fonction permet de cacher une balise grace à un parametre => le nom de la balise. Elle fait appel à la première fonction pour récupérer l'object de la balise.
function hideElt (eltID) {
var myelt = getElt(eltID);
if (myelt.style) myelt = myelt.style;
myelt.display = 'none';
}
Idem mais pour faire apparaitre la balise:
function showElt (eltID,disp) {
var myelt = getElt(eltID);
if (myelt.style) myelt = myelt.style;
myelt.display = disp;
}
Permet de tester si la balise est caché ou non. Elle utilise comme paramètre toujours le nom de la balise (name="le_nom") et fait appel aussi à la toute première fonction afin de récupérer l'object.
function isHide (eltID) {
var myelt = getElt(eltID);
if (myelt.style) myelt = myelt.style;
return myelt.display == 'none' ? true : false;
}
Cette fonction réuni les trois dernières. A chaque appel, elle affiche ou bien cache à tour de role le div. Elle fait donc appel à toute les autres fonctions et ne demande qu'un seul paramètre le même (name).
function switchElt (eltID,disp) {
if (isHide(eltID)) showElt(eltID,disp);
else hideElt(eltID);
}
Cette fonction déplace le div. Elle à besoin de trois parametres: le "name" de la balise, et les coordonnées sur X et Y !!! Elle fait appel tjrs à la toute première fonction afin de de récupérer l'object du div
function mvElt (eltID,mvX,mvY) {
var myelt = getElt (eltID), noPx = document.childNodes ? 'px' : 0;
if (myelt.style) myelt = myelt.style;
myelt.left = mvX + noPx; myelt.top = mvY + noPx;
}
Cette fonction change le z-index du div. Deux paramètres le nom et l'entier pour la profondeur.Elle fait appel à la toute première fonction.
function chgZIndex (eltID,indx) {
var myelt = getElt(eltID);
if (myelt.style) myelt = myelt.style;
myelt.zIndex = indx;
}
Et cette dernière fonction redimentionne le div. Donc trois paramètres:
->Le "name" du div
->La nouvelle largeur
->La nouvelle hauteur
function resizeElt(eltID,newWidth,newHeight) {
var myelt = getElt(eltID), noPx = document.childNodes ? 'px' : 0;
if (myelt.style) myelt = myelt.style;
if (myelt.resizeTo) myelt.resizeTo(newWidth,newHeight);
myelt.width = newWidth + noPx; myelt.pixelWidth = newWidth;
myelt.height = newHeight + noPx; myelt.pixelHeight = newHeight;
}
Ses fonctions sont très pratique et très bien faites.
Sont script est basé sur une fonction importante qui est la première. Elle permet, en fonction du navigateur, de recupérer l'object de la balise.
C'est propre. Je l'ai pas essayé mais ça à l'air vraiment bien.
Bye...