Por ejemplopara cada tipo de elemento en el cuerpo
For each div in body
div.innerHtml = "poo"
next div
esto es, obviamente, pseudo código, pero demuestra lo que estoy tratando de hacer.
Por ejemplopara cada tipo de elemento en el cuerpo
For each div in body
div.innerHtml = "poo"
next div
esto es, obviamente, pseudo código, pero demuestra lo que estoy tratando de hacer.
var elements = document.getElementsByTagName('div');
for (var i = 0; i < elements.length; i++) {
elements[i].innerHTML = "foo";
}
Si desea buscar sólo en el <body>
:
var elements = document.body.getElementsByTagName('div');
for (var i = 0; i < elements.length; i++) {
elements[i].innerHTML = "foo";
}
'document.getElementsByTagName ('cuerpo') [0] === document.body';) –
@amnotiam. Sí, eso fue estúpido ... :) gracias. – gdoron
let elements= document.querySelectorAll('div');
Array.from(elements).forEach((el) => {
el.innerHTML = "foo";
});
Array.from()MDN
Document.querySelectorAll()
var elements= document.querySelectorAll('div');
[].forEach.call(elements, function(el) {
el.innerHTML = "foo";
});
var elements= document.getElementsByTagName('div');
for (var i=0; i<elements.length; i++) {
elements[i].innerHTML = "foo";
}
Una versión alterna con el nuevo método Array.from()
y arrow functions en ES2015:
Array.from(document.body.getElementsByTagName("div")).forEach(a=>a.innerHTML='foo');
<div></div>
<div></div>
<div>Test</div>
<div></div>
<div>Hello</div>
<div>World</div>
Si el tamaño es absolutamente crucial para usted, entonces esta solución es sólo 84 bytes, en comparación con 113 para la respuesta de @Roko y 120 para @ gdoron's.
En ese caso, podría acortar este jQuery mucho más:
$("body div").html('foo');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div></div>
<div></div>
<div>Test</div>
<div></div>
<div>Hello</div>
<div>World</div>
Ahora sólo 26 bytes!
Interesantes ejemplos, pero no se puede hablar sobre * size * y jQuery porque es una biblioteca sobre JS y * tiene su tamaño * por sí mismo. Pulgares arriba para la versión JS BTW (aunque usaría querySelectorAll;) –
Trabajo fácil:
NodeList.prototype.forEach = HTMLCollection.prototype.forEach = Array.prototype.forEach;
Y ahora:
// VanillaJS/JavaScript puro
var lista_de_divs = document.querySelectorAll('div')
lista_de_divs.forEach(function (div, i) {
// código...
console.log(i, div)
})
// jQuery
$('div').forEach(function (div, i) {
// código...
console.log(i, div)
})
contesté su pregunta, pero usted debe hacer la tarea primera ... – gdoron