IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

faire durer un 'onclick'


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de tibotibo69
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 268
    Par défaut faire durer un 'onclick'
    bonjour,

    grace à l'évènement onclick je fais disparaitre un bloc au moment du clic sur une image, le problème est que le bloc ne disparait que pendant 1 seconde.

    Comment faire pour le faire disparaitre définitivement (enfin... jusqu'au moment d'un autre clic )

    voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <script type="text/javascript">
    	function onglet_click(nom) {
     
    		document.getElementById('grad_recap_contrat').style.display = "none";
    	}
    </script>
     
    <img name = "onglet_client" src = "<?php echo $skin_path; ?>/png/onglets/onglet_client.png"  onclick = "onglet_click(this.name);" alt = "Client" />

  2. #2
    Membre chevronné Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Par défaut
    Il y a du code manquant..
    Si tu souhaites faire un toggle :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <html>
    <head><script type="text/javascript">
    function toggle(id){
            document.getElementById(id).style.display=(document.getElementById(id).style.display=='block')"none":"block";
    }
    </script>
    </head>
    <body>
    <img name="onglet_client" src="png/onglets/onglet_client.png"  onclick="onglet_click('grad_recap_contrat');" alt="Client" />
    <div id="grad_recap_contrat">Texte qui apparait ou disparait</div>
    </body>
    </html>

  3. #3
    Membre éclairé Avatar de tibotibo69
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 268
    Par défaut
    j'ai essayé comme tu m'as dit mais ca ne marche pas , le bloc ne disparait même plus pendant une seconde.

    voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    <html>
    <script type="text/javascript">
    	function onglet_click(){
    		document.getElementById('grad_recap_contrat').style.display=(document.getElementById('grad_recap_contrat').style.display=='block')"none":"block";
    	}
     
    </script>
     
    <img name = "onglet_client" src = "<?php echo $skin_path; ?>/png/onglets/onglet_client.png"  onclick = "onglet_click();" alt = "Client" />
     
    <table class="tableau"  id="grad_recap_contrat" align="center">
      <tr>
        <td>Tableau à faire disparaître
        </td>
      </tr>
    </table>
    </html>

  4. #4
    Membre émérite Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Par défaut
    Je ne sais pas si ça a un rapport mais dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function onglet_click(nom) {
       document.getElementById('grad_recap_contrat').style.display = "none";
    }
    tu passes un argument (nom) que tu n'utilises pas.

    Quoi qu'il en soit, ce code devrait bien faire disparaitre l'élément d'id 'grad_recap_contrat'. S'il revient à l'écran, c'est sans doute qu'il y a un autre événement qui ré-actualise l'affichage : reload de la page, timer js, etc. Vérifier aussi à tout hasard que l'id est bien unique dans ton document.

  5. #5
    Membre chevronné Avatar de htr999
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 331
    Par défaut
    il te manquerait un "?"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <html>
    <script type="text/javascript">
    	function onglet_click(){
    document.getElementById('grad_recap_contrat').style.display=(document.getElementById('grad_recap_contrat').style.display=='block')? "none" : "block";
    	}	
    </script>

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    +1000 pour la seconde partie du raisonnement d'Herode
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre éclairé Avatar de tibotibo69
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 268
    Par défaut
    J'ai trouvé la solution !!

    j'avais oublié de mettre "return false;"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href = "" onclick = "onglet_click(); return false;">
    Ce qui se passait c'est que l'élément disparaissait puis la page se rechargait.
    Grâce à "return false" la page ne se recharge plus et l'élément reste caché.

    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Faire durer une applet à travers plusieurs pages
    Par restricteur dans le forum Applets
    Réponses: 4
    Dernier message: 28/05/2007, 22h09
  2. comment faire un onClick sur toute la page?
    Par amartin dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 28/03/2007, 11h34
  3. Réponses: 1
    Dernier message: 09/02/2007, 16h03
  4. [Cookies] Comment faire durer les sessions
    Par Rodolphe_1940 dans le forum Langage
    Réponses: 1
    Dernier message: 08/10/2006, 15h37
  5. Faire apelle a une fonction javascript depuis un onclick=&am
    Par pierrot10 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/12/2005, 21h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo