Cross browser Selecting elements by class name

javascript

Solution

I found this code:

if (!document.getElementsByClassName) {
    document.getElementsByClassName = function(classname) {
        var elArray = [];
        var tmp = document.getElementsByTagName("*");
        var regex = new RegExp("(^|\\s)" + classname + "(\\s|$)");
        for (var i = 0; i < tmp.length; i++) {

            if (regex.test(tmp[i].className)) {
                elArray.push(tmp[i]);
            }
        }

        return elArray;
    };
}​

Here

Problem

How do I select all elements using same class name in javascript. I know i can do it using `document.getElementsByClassName` but I read somewhere that it's not cross browser so if it is true what is the appropriate way to select elements depending on class name without jQuery or other library. Thanks!

Original source