Hola dieguicho y abuenog:
La pena es que no funcione bien en explorer getElementsByName, y lo asocie al atributo id porque es la respuesta (usar un atributo name común)...
La respuesta que propone abuenog creo que es buena, aunque también tendría que funcionar con atributos inventados. Pero en ese caso sería mejor usar getAttribute...
<div catego="perro">hola</div>
<div catego="perro">hola</div>
<div catego="perro">hola</div>
Luego puedes recogerlos así:
<script>
var el = document.getElementsByTagName("div")
var perros= new Array()
for (var i=0; i<el.length; i++)
{
if (el[i].getAttribuete("catego") == "perro"
perros[perros.length]= el[i]
}
</script>
Hice un copy & paste del ejemplo de abuenog, que me parece que está bien.
Saludos