Puede utilizar la biblioteca de selección, por ejemplo Arden: http://sizzlejs.com/ pero si quieres JS puras que te supongo que están atrapados con la obtención de todos los elementos, y luego mediante programación "a dedo" los que tienen clases a las que está interesado en el uso de expresiones regulares como este por ejemplo:
este es un equivalente de su oneliner JQuery:
for(i in document.all) document.all[i].className && /\bpost-text\b/g.test(document.all[i].className) && (document.all[i].style.color = "red")
:)
Si no lo necesita en una sola línea puede hacer que sea más rápido (y mucho más legible):
var myClassName = "someClass";
var regexp = RegExp("\\b"+myClassName+"\\b/g");
var elements = document.all;
for(i in elements){
var this_element = elements[i];
if(regexp.test(this_element.className){
this_element.style.color = "red";
}
}
Si "para (i en el objeto) "no funciona, solo use el ciclo clásico para" for (var i = 0; i < elementos.length; i ++)".
Podría ser 'embellecieron' un poco con el uso de algunos conceptos JS ligeramente más avanzados (correlaciones de funciones de matriz, plegado y tal), la versión JS estás codificación agains? I supongo que no es script ECMA 5, ¿verdad?
Además, echa un vistazo a esta pregunta/respuesta Get All Elements in an HTML document with a specific CSS Class
Este ma y sé útil: http://stackoverflow.com/questions/1933602/how-to-getelementbyclass-instead-of-getelementbyid-with-javascript – IsisCode
@Cheery no es un duplicado. El OP explícitamente quiere una respuesta que no sea jquery. – JaredPar
@JaredPar Disculpe, no lo leí con mucho cuidado. – Cheery