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 :

afficher/masquer un calque


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut afficher/masquer un calque
    Bonjour,

    je suis allergique au javascript en g�n�ral, mais l� pas de pot j'en ai besoin:

    Je dois afficher/masquer un calque en cliquant sur un lien: quand on clique lun lien, la div s'affiche et le reste jusqu'� ce que l'on reclique le lien (pas comme en CSS).
    La fonction doit �tre compatible pour IE et firefox (et les autres si possible).

    Quelqu'un a t'il un bout de code tout pr�t ?


    Merci d'avance

  2. #2
    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 659
    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 659
    Billets dans le blog
    1
    Par d�faut
    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 !

  3. #3
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Bon j'ai survol� un tutoriel javascript histoire de voir si je trouvais le bout de code souhait�.

    Mais rien qu'� lire �a j'ai plein de boutons rouges partout. Je supporte pas javascript, ce langage qui fait bip bip et qui fonctionne qu'� l'occasion.

    Je vais utiliser un lien avec une ancre, �a fera l'affaire.

    Merci

  4. #4
    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 659
    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 659
    Billets dans le blog
    1
    Par d�faut
    pauvre javascript, un gentil petit language tout mignon qui focntionne � merveille quand on le caresse dans le sens du poil ...
    et ne fonctionne qu'� l'occasion.
    ben faut juste l'activer

    fais juste une recherche sur le forum avec style.display ...
    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 !

  5. #5
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Bon allez, j'ai fait un effort, histoire de pas mourrir idiot.

    J'ai commis cela :

    dans la balise head
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <script language="javascript">
    function afficheDiv();
    {
    var baliseDiv;
    if(window.document.all)
    {baliseDiv=window.document.all.premiereBaliseDiv.style;}
    else if(document.layers)
    {baliseDiv=window.document.premiereBaliseDiv;}
    baliseDiv.vsisibility="visible";}
     
    </script>

    Dans la page :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <!-- le lien ci dessous affiche/masque la div (en théorie...) -->
    <a href="#" onClick="afficheDiv; return false;">
    Merci de lire les conditions générales de participation
    </a>
     
    <!--la div qui doit s'afficher/se masquer -->
    <div class="baliseDiv" style="visibility:hidden">
    texte texte texte texte texte ...
    </div>

    R�sultat : nul

    En fait la balise prend le m�me espace que si tout le texte �tait affich�, mais ce dernier reste cach� (double effet kissscript ?)
    Bien s�r quand je clique sur le lien, il se fiche de moi en ne faisant aucun action. M�me en insistant, en cliquant plusieurs fois, rien � faire �a ne fonctionne pas.


    Auriez-vous un peu d'huile pour faire coulisser tout �a?

    (NB: je ne pr�cise pas que je n'ai rien compris au code, je l'ai pomp� sur un tutoriel � 4 balles. Si une �me charitable r�part ce lamentable bout de code, je la questionnerai sans vergogne par la suite).

    Merci d'avance.

  6. #6
    Expert confirm�

    Avatar de denisC
    Profil pro
    D�veloppeur Java
    Inscrit en
    F�vrier 2005
    Messages
    4 050
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Java
    Secteur : Service public

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 4 050
    Par d�faut
    Citation Envoy� par psychoBob
    Auriez-vous un peu d'huile pour faire coulisser tout �a?
    C'est vraiment dans la

  7. #7
    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 659
    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 659
    Billets dans le blog
    1
    Par d�faut
    pfiou ...
    enfin content de t'avoir pouss� � explor� un peu plus loin ...
    Tu te rendras vite compte que javascript n'est pas si compliqu� que tu le penses ...
    tu es all� cherch� bien trop loin !!

    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
    19
    20
    21
    22
    23
    24
    25
    <script language="javascript">
    function afficheDiv()
    {
    document.getElementById('madiv').style.visibility='visible';
    }
     
    </script>
    </head>
     
    <body>
     
     
     
     
    <!-- le lien ci dessous affiche/masque la div (en théorie...) -->
    <a href="#" onClick="afficheDiv(); return false;">
    Merci de lire les conditions générales de participation
    </a>
     
    <!--la div qui doit s'afficher/se masquer -->
    <div class="baliseDiv" style="visibility:hidden" id="madiv">
    texte texte texte texte texte ...
    </div>
    </body>
    </html>
    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 !

  8. #8
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Euh oui, merci pour ton code.

    Mais alors, avant de poser quelques questions pour comprendre, j'aimerai bien corriger ces deux probl�mes :

    1) Avant de cliquer sur le lien, la div prend toute l'espace qu'elle prendrait normalement si elle �tait ouverte, mais le texte n'est pas affich�. Quand on clique, le texte s'affiche dans la div d�j� ouverte.
    Bien sur normalement la div devrait �tre referm�e, le texte dedans. En cliquant le lien la div devrait alors s'ouvrir, poussant fi�rement les �l�ments du dessous et affichant majestueusement le texte qu'elle cachait en son sein!
    L� c'est pas tout � fait �a quand m�me.
    J'ai plac� un height auto dans la feuille de style (je pr�cise � tout hasard).

    2) Comment je referme la balise en cliquant le lien?



    nb: en php/mysql je me d�brouille pas trop mal (je viens de terminer tout un forum) mais javascript, je connais pas. J'ai trop d'apriori peut �tre.

  9. #9
    Expert confirm�

    Avatar de denisC
    Profil pro
    D�veloppeur Java
    Inscrit en
    F�vrier 2005
    Messages
    4 050
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Java
    Secteur : Service public

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 4 050
    Par d�faut
    Citation Envoy� par psychoBob
    1) Avant de cliquer sur le lien, la div prend toute l'espace qu'elle prendrait normalement si elle �tait ouverte, mais le texte n'est pas affich�. Quand on clique, le texte s'affiche dans la div qui semble en fait d�j� ouverte, mais vide.
    Cf mon lien sur la FAQ..... (pas envie de le recopier).

  10. #10
    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 659
    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 659
    Billets dans le blog
    1
    Par d�faut
    comme je le diasais tout au d�but ...
    n'utilise pas visibility = hidden ou visible

    mais display = none ou block
    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 !

  11. #11
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Non j'ai rien compris, je comprend rien � ce langage.

    je viens de faire �a:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <script language="javascript"> 
    function afficheDiv() 
    { 
    document.getElementById('madiv').style.display = "block"; 
    } 
     
    </script> 
     
    <a href="#" onClick="afficheDiv(); return false;"> Merci de lire les conditions générales de participation</a>
    <div class="baliseDiv" style.display = "none" id="madiv"> 
    texte
    </div>
    L� tout s'affiche et rien n'est interactif.

  12. #12
    Expert confirm�

    Avatar de denisC
    Profil pro
    D�veloppeur Java
    Inscrit en
    F�vrier 2005
    Messages
    4 050
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Java
    Secteur : Service public

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 4 050
    Par d�faut
    Citation Envoy� par psychoBob
    <div class="baliseDiv" style="display:none" id="madiv">
    Mais l�, c'est m�me plus du javascript, juste du HTML

  13. #13
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Effectivement, la faute est idiote,d�sol�.

    Je viens de tenter cela (je suis dans le noir avec les bras devant, dites moi ou est la sortie, c'est pas drole)

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script language="javascript"> 
    function afficheDiv() 
    { 
    document.getElementById('madiv').style.display='block'; 
    } 
    </script> 
     
    <a href="#" onClick="afficheDiv; return false;">  Merci de lire les conditions générales de participation</a>
    <div class="baliseDiv" style="display:none" id="madiv"> </div>
    Cela ne onctionne pas, la div est cach�e, mais ne s'ouvre plus (ce qui �vite au moins de constater qu' elle ne se referme pas en cliquant le lien).

    **edit** je viens d'�crire display:block dans la fonction aussi, par curiosit�, mais c'est pareil, le fiasco complet.

  14. #14
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    442
    D�tails du profil
    Informations personnelles :
    �ge : 43
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 442
    Par d�faut
    Ton code est pas si mal pour quelqu'un d'allergique au javascript

    Voil� une correction:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <script type="text/javascript"> 
    function switchDiv() 
    {
    var madiv = document.getElementById('madiv');
    if (madiv.style.display=="none") madiv.style.display = "";
    else madiv.style.display = "none";
    }
    </script> 
     
    <a href="#" onClick="switchDiv();"> Merci de lire les conditions générales de participation</a>
    <div class="baliseDiv" style="display:none;" id="madiv"> 
    texte
    </div>

  15. #15
    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 659
    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 659
    Billets dans le blog
    1
    Par d�faut
    tu vas voir jung on va finir par le convertir au javascript ...
    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 !

  16. #16
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    �a fonctionne impeccable, merci beaucoup !

    je ne marque pas r�solu tout de suite parce que je dois filer � la poste et en revenant je vais vous poser quelques questions parce que je ne n'aime pas utiliser du code que je ne comprend pas.

    Encore merci, en attendant.




    N.B : Je dois bientot attaquer un �diteur de texte en javascript, vous allez morfler les gars...

  17. #17
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    442
    D�tails du profil
    Informations personnelles :
    �ge : 43
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 442
    Par d�faut


    SF > La conversion va �tre difficile (c'est javascript quand m�me, �a a tendance � rendre chauve quand on d�bute )

    psychoBob > Pas de probl�me, on est l� pour �a et l'�quipe a �t� renforc�e 8)

  18. #18
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Bon alors, voil� une question pas piqu�e des hannetons histoire de pouvoir faire croire aux autres que c'est moi qui a �crit le code (c'est pas vrai je dirais que c'est vous)

    Quelle est le r�le de cette fonction: document.getElementById ? D�terminer un �l�ment ?

    Bon si vous voulez pas r�pondre pour �a, je vais de toute fa�on aller chercher sur google. Je pensais avoir plus de question mais en fait c'est simple � comprendre.

    Encore merci

  19. #19
    Expert confirm�

    Avatar de denisC
    Profil pro
    D�veloppeur Java
    Inscrit en
    F�vrier 2005
    Messages
    4 050
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Java
    Secteur : Service public

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 4 050
    Par d�faut
    Citation Envoy� par psychoBob
    Quelle est le r�le de cette fonction: document.getElementById ? D�terminer un �l�ment ?
    C'est une fonction du DOM (Document Object Model, norme du W3C), implement�e par tous les navigateurs (les vrais) qui retourne un �l�ment HTML (sous forme d'objet) ayant l'id donn�. Comme l'attribut id doit avoir une valeur unique pour chaque �l�ment (norme HTML) �a ne retourne qu'un seul �lement.

  20. #20
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Par d�faut
    Merci pour ta r�ponse DenisC


    J'en profite avec une petite question, qui n'est pas � proprement parl� du javascript mais qui vient du sujet de ce post :

    Lorsque l'on clique sur le lien pour ouvrir la div, toute la page remonte, comme avec un signet. C'est assez d�sagr�able, car si la page est longue, on remonte tout, pour ensuite redescendre avec la barre de scroll, chercher l'endroit ou la div s'est ouverte etc...

    Il ne me semble pas que cela fasse �a d'ordinaire avec ce genre de syst�me.


    Dans le lien il y a juste a href="#" . J'ai essay� sans rien dans les "" mais �a bug sous firefox. J'ai essay� une ancre mais le probl�me est pire.



    Comment puis-je faire pour que lorsque l'on clique le lien pour ouvrir la div, celle ci s'ouvre sans que la position de la page ne soit modifi�e ?

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 2 12 Derni�reDerni�re

Discussions similaires

  1. Popup simul�?Afficher/Masquer calque?Lien "#" ?:
    Par Profet07 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 0
    Dernier message: 14/05/2010, 14h13
  2. R�ponses: 2
    Dernier message: 09/07/2008, 11h31
  3. afficher masquer calques
    Par bilel59 dans le forum Flash
    R�ponses: 3
    Dernier message: 04/03/2007, 10h37
  4. Afficher/Masquer un <DIV> au clique de la souris.
    Par Joad dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 24/09/2005, 10h55
  5. Afficher/Masquer un bouton comme IE 6
    Par benj63 dans le forum C++Builder
    R�ponses: 3
    Dernier message: 29/07/2002, 13h12

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