I need help with a little timeout javascript :)

Discussion in 'JavaScript' started by cmplieger, Nov 19, 2008.

  1. #1
    Hey guys im new here :)

    I need a little help with this javascript. It works well but never it doesnt seem to execute
     window.setTimeout(reChangeClass, 3000);
    Code (markup):
    when you change classes. The problem simply is the classes do not change to "slidreset" but stay on "slide" or "slide2"

    could anyone help me?? thanks a lot :)

    function addListener(o, e, f) {
        if (o.addEventListener) {
            o.addEventListener(e, f, false);
        } else {
            o.attachEvent("on" + e, f);
        }
    }
    
    
    
    function bindAnchors() {
        try {
            var collection1 = document.getElementById("topmenu").getElementsByTagName("a");
            for (i = 0; i <= collection1.length - 1; ++i) {
                var lien = collection1.item(i);
                if (lien.className != 'noslide')
                    addListener(lien, "click", changeClass2);
            }
        } catch (e) {}
        try {
            var collection2 = document.getElementById("content").getElementsByTagName("a");
            for (i = 0; i <= collection2.length - 1; ++i) {
                var lien = collection2.item(i);
                if (lien.className != 'noslide')
                    addListener(lien, "click", changeClass1);
            }
        } catch (e) {}
        try {
            var collection5 = document.getElementById("footer").getElementsByTagName("a");
            for (i = 0; i <= collection5.length - 1; ++i) {
                var lien = collection5.item(i);
                if (lien.className != 'noslide')
                    addListener(lien, "click", changeClass1);
            }
        } catch (e) {}
        try {
            var collection3 = document.getElementById("toprightmenu").getElementsByTagName("a");
            for (i = 0; i <= collection3.length - 1; ++i) {
                var lien = collection3.item(i);
                if (lien.className != 'noslide')
                    addListener(lien, "click", changeClass1);
            }
        } catch (e) {}
        try {
            var collection4 = document.getElementById("toprightbutton").getElementsByTagName("a");
            for (i = 0; i <= collection4.length - 1; ++i) {
                var lien = collection4.item(i);
                if (lien.className != 'noslide')
                    addListener(lien, "click", changeClass1);
            }
        } catch (e) {}
    }
    
    
    function reChangeClass() {
        document.getElementById("content").className = "slidereset";
        document.getElementById("footer").className = "slidereset";
        document.getElementById("list").className = "slidereset";
    }
    
    
    function changeClass1() {
        document.getElementById("content").className = "slide";
        document.getElementById("footer").className = "slide";
        document.getElementById("list").className = "slide";
        window.setTimeout(reChangeClass, 3000);
    
    
    }
    
    
    function changeClass2() {
        document.getElementById("content").className = "slide2";
        document.getElementById("footer").className = "slide2";
        document.getElementById("list").className = "slide2";
        window.setTimeout(reChangeClass, 3000);
    }
    
    addListener(window, "load", bindAnchors);
    
    HTML:
     
    cmplieger, Nov 19, 2008 IP