El nombre de la clase no se cambió en IE 7, 8 y chrome

Estoy tratando de cambiar el nombre de clase de dos elementos durante la carga.

Aquí está mi código para el mismo:

    var browserName=navigator.appName;
    var tfElem = document.getElementById("TTlExpct");
    var blTfElem = document.getElementById("BTLExpct");
    if (browserName=="Microsoft Internet Explorer")
    {
        tfElem.className ="pn-tf";
        blTfElem.className ="pn-tf active";
        }
    else
    {
        tfElem.setAttribute('class', 'pn-tf');
        blTfElem.setAttribute('class', 'pn-tf active');
        }

El bloque else se encarga del código si no es IE, en Mozilla, esto funciona bien, el nombre de la clase se establece.

No funciona en IE7 y IE8

y

en Chrome, funciona solo si vuelvo a cargar la página.

Cualquier ayuda será apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta