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 :

Supprimer un DIV dynamiquement


Sujet :

JavaScript

  1. #1
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut Supprimer un DIV dynamiquement
    Bonjour,

    J'essaie de mettre au point un �quivalent de tooltip pour un textarea.
    J'arrive � cr�er le DIV et � l'afficher, mais mon probl�me est de le supprimer.

    Existe t'il la m�thode inverse � "document.createElement" ?
    Mon ami Google est tr�s discret sur le sujet.....

    Voici un exemple du code que j' utilise pour mon test.
    Le div cr�� est en fond rouge (pas beau mais j'exp�rimente).

    Il y a 2 fonctions :

    ChangeArea : change la taille du "textarea"
    ShowComment : qui affiche le contenue du "textarea"

    C'est le Div cr�� par ShowComment que je souhaiterai supprimer

    Merci

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    <html>
    <head>
    <script>
    function ChangeArea(ObjId,val) {
     var Obj = document.getElementById(ObjId);
     if (val==0) {
    	Obj.style.height = "60px";
     } else if (val==1) {
    	Obj.style.height = "20px";
     }
    }
    function ShowComment(ObjId,ev) {
     if(!document.getElementById('CCpt')) {
    	var Obj = document.getElementById(ObjId);
    	Xpos = ev.clientX;
    	Ypos = ev.clientY;
    	var CCpt = document.createElement('div');
    	CCpt.id ='ccpt';
    	CCpt.style.position ="absolute";
    	CCpt.style.top = Ypos;
    	CCpt.style.left = Xpos;
    	CCpt.style.width = "200px";
    	CCpt.style.height = "200px";
    	CCpt.style.backgroundColor ="red";
    	CCpt.innerHTML = Obj.value;
    	CCpt.style.visibility ="visible";
    	document.body.appendChild(CCpt);
     }
    }
    </script>
    </head>
    <body>
    <div id="tt">
    <input type="text" id="inpt1" value="ligne1">
    <TEXTAREA id="txt1" style="height:20px" COLS="50" onfocus="ChangeArea(this.id,0);" onblur="ChangeArea(this.id,1);" onmousemove="ShowComment(this.id,event)";>
    TEST
    </textarea>
    </div>
    </body>
    </html>

  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
    Soit tu le cr�es � chaque fois et du coup tu fais un removeCHild,
    soit tu ne le cr�es qu'une fois et tu changes son 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 !

  3. #3
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut
    Merci pour ces r�ponses,

    J'ai bien pens� � passer le "display" en "hidden", mais dans ma page d�finitive, je vais avoir n lignes ayant un "textarea" (cr��es dynamiquement sur action de l'utilisateur). Donc j'ai pas trop envie de trainer des DIV pour rien.

    Je vais regarder removeCHild �a me semble bien.....

    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
    un seul div suffit ...
    il suffit d'en changer le contenu et de le positionner ou tu veux ...
    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
    R�dacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par d�faut
    Citation Envoy� par SPACHFR Voir le message
    Merci pour ces r�ponses,

    J'ai bien pens� � passer le "display" en "hidden", mais dans ma page d�finitive, je vais avoir n lignes ayant un "textarea" (cr��es dynamiquement sur action de l'utilisateur). Donc j'ai pas trop envie de trainer des DIV pour rien.

    Je vais regarder removeCHild �a me semble bien.....

    MERCI
    display > none
    visibility > hidden

  6. #6
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut
    Citation Envoy� par SpaceFrog Voir le message
    un seul div suffit ...
    il suffit d'en changer le contenu et de le positionner ou tu veux ...
    En fait il s'agit "d'�v�nements utilisateur que j'envoie lorsque l'ensemble des saisie sont finies vers le serveur via un requ�te XMLHttpRequest.

    L'ensemble des �v�nements sont affich�s au fur et � mesure de leurs d�clarations. La zone textarea est en fait des commentaires utilisateurs.
    Le but final et obtenir l'�quivalent d'un tooltips lors du passage sur le textarea et de l'afficher sous la position courante de la sourie.
    Je ne suis pas loin du r�sultat reste � supprimer le div puis de g�rer correctement l'affichage.

  7. #7
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut
    Je ne m'en sort pas avec le removeChild, j'ai du louper un truc.
    Lors de l'�v�nement 'onMouseOut', j'ai l'erreur suivante :

    Ligne 38 Le type ne correspond pas

    C'est dans ma fonction HideComment mais je ne comprend pas pourquoi...

    Pourriez vous m'indiquer mon erreur

    Merci

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    <html>
    <head>
    <script>
    function ChangeArea(ObjId,val) {
     var Obj = document.getElementById(ObjId);
     if(document.getElementById('ccpt')) {
        var CCpt = document.getElementById('ccpt');
    	document.body.removeChild(CCpt);
     
     }
     if (val==0) {
    	Obj.style.height = "60px";
     } else if (val==1) {
    	Obj.style.height = "20px";
     }
    }
    function ShowComment(ObjId,ev) {
      Xpos = ev.clientX;
      Ypos = ev.clientY;
     if(!document.getElementById('ccpt')) {
    	var Obj = document.getElementById(ObjId);
    	var CCpt = document.createElement('div');
    	CCpt.id ='ccpt';
    	CCpt.style.position ="absolute";
    	CCpt.style.top = Ypos;
    	CCpt.style.left = Xpos;
    	CCpt.style.width = "200px";
    	CCpt.style.height = "200px";
    	CCpt.style.backgroundColor ="#FFFF99";
    	CCpt.style.border ="solid #DDDDDD";
    	CCpt.innerHTML = Obj.value;
    	CCpt.style.visibility ="visible";
    	document.body.appendChild(CCpt);
     }
    }
    function HideComment(ObjId) {
    	if(document.getElementById('ccpt')) {
    		document.body.removeChild('ccpt');
    	}
    }
    </script>
    </head>
    <body>
    <div id="tt">
    <input type="text" id="inpt1" value="ligne1">
    TEST<TEXTAREA id="txt1" style="height:20px" COLS="50" onfocus="ChangeArea(this.id,0);" onblur="ChangeArea(this.id,1);" onMouseOver="ShowComment(this.id,event);" onMouseOut="HideComment(this.id);">
     
    </textarea>
    </div>
    </body>
    </html>

  8. #8
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut
    J'ai fini par trouver, en cherchant dans le forum.
    Je ne comprend pas trop la syntaxe mais �a fonctionne.

    j'ai mis ce code en ligne 38

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    document.getElementById('ccpt').parentNode.removeChild(document.getElementById('ccpt'))
    Merci � tous ceux qui m'ont aid�

  9. #9
    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
    ta variable objet n'est pas globale, elle n'a donc de prot�e qu'au sein de la fonction et pas entre les fonctions ...
    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 !

  10. #10
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut
    Il faut supprimer le noeud, tu lui donne simplement l'identifiant du div, ligne 39
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.body.removeChild(document.getElementById("ccpt"));

  11. #11
    Membre �clair� Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    F�vrier 2004
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Paaaaaa

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 557
    Par d�faut
    Merci pour ces pr�cisions

    Une derni�re requ�te, j'arrive pas � trouver un tuto sur ces m�thodes.
    Si vous avez un lien je suis preneur.

  12. #12
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par d�faut
    Pas de tuto, mais une doc plut�t bien expliqu�e https://developer.mozilla.org/en/Gec...ment_Reference, pas exemple pour element.removeChild(). Ou bien Sitepoint qui donne aussi les compatibilit� entre navigateurs.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [C#] Supprimer un combox dynamique
    Par lykim1982 dans le forum C#
    R�ponses: 4
    Dernier message: 09/02/2007, 16h37
  2. [AJAX] Div dynamique AJAX. Sous IE, les images ne s'affichent pas
    Par N3odyme dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 10/12/2006, 20h56
  3. [ok]remplir des div dynamiquement?
    Par manutudescends dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 28/08/2006, 16h24
  4. Ajouter/Supprimer un select dynamiquement
    Par n@n�u dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 22/06/2006, 10h22
  5. div dynamique
    Par Invit�(e) dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 11
    Dernier message: 21/10/2005, 22h50

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