Haciendo pruebas con el extend()
que hablamos el otro día he dado con un sistema muy sencillo y cómo para crear elementos en Javascript.
function extend(m, e){
var e = e || this;
for (var x in m) e[x] = m[x];
return e;
};
function create(type, opt){
return extend(opt,document.createElement(type));
}
Usando extend()
y esta pequeña función llamada create()
, podemos hacer cosas como estas.
create("a",{
innerHTML: "Hola",
href: "https://www.anieto2k.com",
title: "Hola",
onclick: function(){
alert("Hola");
}
});
Actualización
gbt29, nos muestra una versión más completa de la función.
function create(type, opt, parent){
// Creamos el elemento
var el = document.createElement(type) ;
// Si le pasamos estilos los tratamos aparte, extendemos.
if (opt.style)
extend(opt.style,el.style);
// Borramos los estilos de las opciones pasadas
delete opt.style;
// Extendemos el elemento
extend(opt,el);
// Si indicamos el padre, le insertamos al hijo
if (parent)
parent.appendChild(el);
// Devolvemos el elemento creado.
return el;
}
Tratamos los estilos aparte ya que se trata de un miembre del elemento de solo lectura, por ese motivo los extendemos previamente y posteriormente borramos los estilos para exteder el resto del elemento.
10 comentarios, 0 referencias
+
#