El método
getElementById
se utilizar para trabajar con un solo elemento pues el
id
es un dato único e irrepetible en el DOM. Lo que puedes hacer es asignar una misma clase a todas las imágenes, tomarlas ya sea con el método
getElementByClassName
o con
querySelectorAll
(recomendado), iterar sobre el conjunto resultante y aplicar el cambio de tamaño a cada elemento.
Código HTML:
Ver original<img src = "imagen1.jpg" class = "foo" /> <img src = "imagen2.jpg" class = "foo" /> <img src = "imagen3.jpg" class = "foo" />
Código Javascript
:
Ver originalvar boton = document.querySelector("#bar"),
imagenes = document.querySelectorAll(".foo"),
total = imagenes.length;
boton.addEventListener("click", function(){
for (var i = 0; i < total; i++){
if (getComputedStyle(imagenes[i]).maxWidth == "400px"){
imagenes[i].style.maxWidth = "120px";
}
else{
imagenes[i].style.maxWidth = "400px";
}
}
}, false);
DEMO
Con el método
getComputedStyle
, obtengo el estilo computado del elemento.
Saludos