You are viewing this site as a guest. Join our community to get your questions answered and share knowledge. Active members may advertise and ask for a website critique.

IE and my javascript: not working

They have: 393 posts

Joined: Feb 2005

For some reason IE doesnt like my javascript below:

ciao.getElementsByClassName('wp-caption-text').item(0).appendChild(d);

Has anyone got any ideas. The error I am recieving is below:

Webpage error details

Message: Object doesn't support this property or method
Line: 277
Char: 15
Code: 0

If someone can figure this out I would think they were a genious. I know it is this line because I changed the code and it worked. Basically I created an array and did a for loop.

teammatt3's picture

He has: 2,076 posts

Joined: Sep 2003

getElementsByClassName doesn't work in IE. IE doesn't implement it.

You'll need to roll your own method, or use a Javascript library like jQuery (there are a dozen of them, but I like jQuery).

If you want to create your own, a quick Google search turned this code up:

document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}

They have: 393 posts

Joined: Feb 2005

IE is a bag of C**P!

Thanks mate.