Partage
  • Partager sur Facebook
  • Partager sur Twitter

[DOM]placer précisément un élément

Sujet résolu
    11 janvier 2009 à 12:20:45

    bonjours!
    voici mon problème:
    je crée un élément, je lui mets un contenu, des attributs etc. et quand vient le moment de le placer dans la page web, j'utilise appenchild...
    mais il se mets à la fin de l'élément...
    je me demande donc s'il est possible de lui dire de se placer entre 2 éléments...

    merci d'avance!
    • Partager sur Facebook
    • Partager sur Twitter
      11 janvier 2009 à 12:36:40

      La fonction appendChild sert à ajouter un noeud enfant, le noeud s'ajoute forcément à la suite du contenu du noeud parent. Pour une fonction qui place l'élément par rapport à un autre noeud, et non plus par rapport à un parent, utilise insertBefore() : http://fr.selfhtml.org/javascript/obje [...] insert_before

      La fonction insertAfter n'existe pas nativement, mais elle est facile à coder en utilisant insertBefore :
      function insertAfter(node, beforeNode){
      	//On cherche le noeud suivant actuellement celui après lequel on veut faire l'insertion
      	var nextSibling = beforeNode.nextSibling;
      	if(nextSibling){
      		//On insère avant le noeud suivant
      		beforeNode.parentNode.insertBefore(node, nextSibling);
      	}
      	else{
      		//Le noeud après lequel on veut faire l'insertion est le dernier => on insère à la fin du noeud parent
      		beforeNode.parentNode.appendChild(node);
      	}
      }
      
      • Partager sur Facebook
      • Partager sur Twitter

      [DOM]placer précisément un élément

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown