Hola otra vez:
¿Cómo estás Carlitos? ... ¡Nos tenías un poco olvidados...!
No es mi intención instruir sino compartir... aunque si alguien aprende algo, mejor.
Implementé la función para que sea el primer nodo y no tenga errores (con la otra implementación, podría existir un elemento sin "hijos")...
:
Código:
function crearPrimerTag(id_contenedor, tipo_tag, atributos, estilos, contenido) {
var los_estilos = estilos.split(",");
var los_atributos = atributos.split(",");
var yo = document.createElement(tipo_tag);
yo.id = "ID_" + Date();
for (var i = 0; i < los_atributos.length; i ++)
yo.setAttribute(los_atributos[i].split("=")[0], los_atributos[i].split("=")[1]);
for (var i = 0; i < los_estilos.length; i ++)
yo.style[los_estilos[i].split("=")[0]] = los_estilos[i].split("=")[1];
yo.appendChild(document.createTextNode(contenido));
var nodoActual = document.getElementById(id_contenedor);
if (nodoActual.childNodes.length == 0) {//alert("sin hijos");
siguiente = document.getElementById(id_contenedor).firstChild;
document.getElementById(id_contenedor).insertBefore(yo, siguiente);
}
else {//alert(nodoActual.childNodes[0].nodeName);
document.getElementById(id_contenedor).appendChild(yo);
}
return yo.id;
}
Es obvio que la llamada en este caso es crearPrimerTag.
Hay un par de alertas hechas comentarios que use para las pruebas.
Saludos