new - javascript document createelement button
¿CreateElement con id? (7)
Estoy tratando de modificar este código para también darle a este artículo div una identificación, sin embargo, no he encontrado nada en google, y idName no funciona. Leí algo sobre el apéndice , sin embargo, parece bastante complicado para una tarea que parece bastante simple, entonces, ¿hay alguna alternativa? Gracias :)
g=document.createElement(''div''); g.className=''tclose''; g.v=0;
¿Por qué no hacer esto con jQuery?
var newDiv= $(''<div/>'', { id: ''foo'', class: ''tclose''})
Debe usar el método .setAttribute()
:
g = document.createElement(''div'');
g.setAttribute("id", "Div1");
No estoy seguro de si está intentando establecer una ID para que pueda usar el estilo en CSS, pero si ese es el caso, también puede probar:
var g = document.createElement(''div'');
g.className= "g";
y eso nombrará a tu div para que puedas apuntarlo.
Puede usar g.id = ''desiredId''
de su ejemplo para establecer el id del elemento que ha creado.
Puedes usar .setAttribute()
Ejemplos:
g.setAttribute("id","yourId")
g.setAttribute("class","tclose")
Aquí está mi función para hacer esto mejor:
function createElement(element, attribute, inner) {
if (typeof(element) === "undefined") {
return false;
}
if (typeof(inner) === "undefined") {
inner = "";
}
var el = document.createElement(element);
if (typeof(attribute) === ''object'') {
for (var key in attribute) {
el.setAttribute(key, attribute[key]);
}
}
if (!Array.isArray(inner)) {
inner = [inner];
}
for (var k = 0; k < inner.length; k++) {
if (inner[k].tagName) {
el.appendChild(inner[k]);
} else {
el.appendChild(document.createTextNode(inner[k]));
}
}
return el;
}
Ejemplo 1:
createElement("div");
devolverá esto:
<div></div>
Ejemplo 2:
createElement("a",{"href":"http://google.com","style":"color:#FFF;background:#333;"},"google");`
devolverá esto:
<a href="http://google.com" style="color:#FFF;background:#333;">google</a>
Ejemplo 3:
var google = createElement("a",{"href":"http://google.com"},"google"),
youtube = createElement("a",{"href":"http://youtube.com"},"youtube"),
facebook = createElement("a",{"href":"http://facebook.com"},"facebook"),
links_conteiner = createElement("div",{"id":"links"},[google,youtube,facebook]);
devolverá esto:
<div id="links">
<a href="http://google.com">google</a>
<a href="http://youtube.com">youtube</a>
<a href="http://facebook.com">facebook</a>
</div>
Puede crear nuevos elementos y establecer atributos y anexar hijos
createElement("tag",{attr:val,attr:val},[element1,"some text",element2,element3,"or some text again :)"]);
No hay límite para los elementos attr o child
var element = document.createElement(''tagname'');
element.className= "classname";
element.id= "id";
prueba esto que quieras
var g = document.createElement(''div'');
g.id = ''someId'';