Javascript: afficher - masquer dit effet Toogle
Je vais donc vous présenter la version simple et optimiser pour tous les navigateurs. Donc pas d'effet de transition à l'aide de framework Javascript ou autres...Exit Prototype, Mootools, SimpleJS et les autres...
Le principe est simple:
- Une page (x)html
- Les blocs à masquer ou afficher
- La fonction Javascript
1- Création de la page XHTML strict
Je crée un page XHTML strict pour l'exemple, bien entendu l'encodage de la page et son type ne joue pas de rôle dans le fonctionnement de la fonction.
2- Définition du bloc à afficher / masquer
Cette étape comporte 2 étapes:
- définir la zone (texte, bloc, image) qui va appelé la fonction javascript et permettre de réaliser l'effet voulu.
- définir la zone qui va être afficher et masquer
Le bloc visible servant à appeler la fonction javascript se compose d'un argument qui est l'id du bloc masqué. Le bloc masqué contient un attribut id servant à l'identifier et à attribuer la fonction à ce bloc en l'occurrence. "display : none" sert à masquer par défaut le bloc. En donnant le même id a plusieurs blocs, l'appel de la fonction affichera et masquera l'ensemble des blocs.
div onclick="tooglebox('blocmasque')"
Experience31
/div
div id="blocmasque" style="display: none;"
www.experience31.fr
/div
3- Création de la fonction javascript
La fonction javascript est a intégré dans les balises d'entête "head" de votre page web. Elle a pour particularité d'être simple, légère et donc rapide. Une seule fonction est nécessaire pour afficher et masquer les blocs...
script language="javascript" type="text/javascript"
// Affiche ou masque les details d'une zone
// idDetail : id de l'element contenant le detail
function tooglebox(idDetail) {
var style = document.getElementById(idDetail).style;
style.display = (style.display == "none") ? "" : "none";
}
/script
Bien entendu, cette fonction requière que le Javascript soit activé sur l'ordinateur de l'internaute.
Cette fonction peut être amélioré par exemple en remplaçant le "afficher" par "masquer" et inversement lors de l'exécution de la fonction, ou encore en rajoutant des effets de transtions... mais là, je vous conseille d'utiliser les frameworks Javascript.
Libellés : développement
























