2010-12-05 9 views
0

J'essaye de faire ceci sans Jquery. Je veux montrer un div en cliquant sur un déclencheur. Jusqu'à présent, j'ai ceci pour cacher l'élément.Affichage de l'élément Javascript sur le clic

document.getElementById('element').style.display = 'none'; 

HTML ..

<div class="element">Ahem, boo!!</div> 
<a href="#" id="showDiv">Show</a> 

Comment puis-je créer une fonction pour afficher le div en cliquant sur le lien? Je voudrais éviter d'utiliser des fonctions comme onclick="showDiv() dans le lien lui-même.

+0

whydo vous voulez éviter d'utiliser l'événement onclick? Votre seule autre option est , mais ce n'est pas mieux ... –

+0

@idealmachine, désolé j'ai édité le code –

Répondre

4
document.getElementById('showDiv').onclick=function(){ 
    // Remove any element-specific value, falling back to stylesheets 
    document.getElementById('element').style.display=''; 
}; 
2

Il est possible de joindre complètement des gestionnaires d'événements dans JavaScript. Exemple:

document.getElementById('showDiv').onclick = function() { 
    // Do whatever now that the user has clicked the link. 
}; 

Pour inverser l'effet de la première ligne de code affiché, vous pouvez utiliser:

document.getElementById('element').style.display = 'block'; // or 
document.getElementById('element').style.display = ''; 
Questions connexes