12 - Eliminar un nodo de texto (removeChild) y verificar si tiene nodos hijo (hasChildNodes)




Problema:Implementar un programa que permita añadir nodos de texto y eliminar nodos de texto de un párrafo (eliminar siempre el primer hijo de la lista)
  if (nparrafo.hasChildNodes())
  {
    nparrafo.removeChild(nparrafo.firstChild);
    contador--;
  }
La propiedad firstChild retorna la referencia al primer hijo que tiene un nodo de tipo elemento.
<!DOCTYPE html>
<html>
<head>
<title>Problema</title>
<script src="funciones.js"></script>
<link rel="StyleSheet" href="estilos.css" type="text/css">
</head>
<body>
<p id="parrafo">Texto inicial:</p>
<input type="button" value="Agregar nodo de texto" onClick="agregar()">
<input type="button" value="Eliminar nodo de texto" onClick="eliminar()">
</body>
</html>
var contador=1;
function agregar()
{
  var nt=document.createTextNode('Nuevo texto '+contador+'-');
  var nparrafo=document.getElementById('parrafo');
  nparrafo.appendChild(nt);
  contador++;
}

function eliminar()
{
  var nparrafo=document.getElementById('parrafo');
  if (nparrafo.hasChildNodes())
  {
    nparrafo.removeChild(nparrafo.firstChild);
    contador--;
  }
}
Ver solución


Retornar