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 :

[IE7] Récupérer l'id de la dernière div


Sujet :

JavaScript

  1. #1
    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 [IE7] Récupérer l'id de la dernière div
    Bonjour à tous,
    J'ai une div qui en contient pas mal d'autres. Ces dernières sont retirées au fur et à mesure, une par une et j'ai besoin de connaître l'id de la dernière.

    Code Javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function DelLastElement(id, type){
    	var conteneur = document.getElementById(id).getElementsByTagName(type);
    	var last = conteneur[conteneur.length-1].id;
    	document.getElementById(id).removeChild(document.getElementById(last));
    }
     
    DelLastElement('ma_div', 'div');

    LastChild ? ça vie dans l'eau ? Rohh je connais, juste que j'essaye sans

    Citation Envoyé par IE7
    'getElementsByTagName(...)[...].id' a la valeur Null ou n'est pas un objet.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Par défaut
    Pourquoi ne pas utiliser lastChild?
    C'est plus simple non?

  3. #3
    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
    Citation Envoyé par d-Rek Voir le message
    LastChild ? ça vie dans l'eau ? Rohh je connais, juste que j'essaye sans
    Admettons que mon conteneur ne contienne pas uniquement des div.. et que le dernier ne soit pas une div.. Je supprimerai le dernier élement qu'il soit div ou pas.
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <div id="ma_div">
    	<div id="div1">Texte div1</div>
    	<div id="div2">Texte div2</div>
    	<p>Texte p1</p>
    	<div id="div3">Texte div3</div>
    	<p>Texte p2</p>
    </div>
    Ici je supprimerai le paragraphe contenant Texte p2.

    Merci tout de même pour la rapidité !

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Par défaut
    Essaye ca pour voir...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function DelLastElement(id, type){
    	var conteneur = document.getElementById(id).getElementsByTagName(type);
    	var last = conteneur[conteneur.length-1];
    	document.getElementById(id).removeChild(last);
    }
     
    DelLastElement('ma_div', 'div');

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var noeud = document.getElementById(id).lastChild();
    while (noeud != null && noeud.tagName != "DIV")
    noeud = noeud.previousSibling();
    if (noeud != null)
    document.getElementById(id).removeChild(document.getElementById(noeud.id));
    else alert("Plus de DIV !");
    Non garanti (pas le temps de tester )

    Remarque :
    si si, tagName renvoie "DIV" et non "div"

    A+

  6. #6
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 684
    Par défaut
    ben oui, par exemple!

  7. #7
    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
    Bon j'ai trouvé, quand j'arrive à 0 div dans mon conteneur, j'essaye encore de supprimer la dernière..
    Ca n'avait pas vraiment à voir avec le retrait de la div !

    Merci quand même, ça m'a fait regarder différement mon script pour trouver l'erreur.

  8. #8
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Mouais ....
    Tu as surtout oublié de dire que ton script fonctionnait et que l'erreur ne survenait qu'au dernier appel ...

    A+

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

Discussions similaires

  1. récupérer la position absolue d'un div
    Par natoine dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/02/2008, 16h12
  2. [POO] récupérer la position X d'une div 'menu'
    Par goueg dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/07/2007, 10h05
  3. Réponses: 5
    Dernier message: 29/05/2007, 17h56
  4. Récupérer comme date l'année dernière
    Par celiaaa dans le forum Access
    Réponses: 2
    Dernier message: 04/01/2007, 14h47
  5. Récupérer tous les elements d'un DIV
    Par arnolem dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 18/07/2006, 15h13

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