为了账号安全,请及时绑定邮箱和手机立即绑定

老师说的那个bug如果不优化代码怎么解决

index怎么在不优化代码情况下传值

正在回答

1 回答

function $(id) {
            return typeof id === "string" ? document.getElementById(id) : id;
        }
        window.onload = function() {
            var index = 0;
            var timer = null;
            var tits = $("tabTit").getElementsByTagName("li");
            var txts = $("tabTxt").getElementsByClassName("demo");
            if(tits.length != txts.length) {return;}
            for(var i=0,l=tits.length; i<l; i++) {
                tits[i].id = i;
                tits[i].onmouseover = function() {
                    clearInterval(timer);
                    styleFun(this.id);
                }
                tits[i].onmouseout = function() {
                    timer = setInterval(autoPlay, 2000);
                }
            }
            //在开启定时器的同时清楚定时器并置空
            if(timer) {
                clearInterval(timer);
                timer = null;
            }
            timer = setInterval(autoPlay, 2000);
            function autoPlay() {
                index++;
                if(index >= tits.length) {
                    index = 0;
                }
                styleFun(index);
            }
            function styleFun(ele) {
                for(var j=0,m=tits.length; j<m; j++) {
                    tits[j].className = "";
                    txts[j].style.display = "none";
                }
                tits[ele].className = "select";
                txts[ele].style.display = "block";
                //将鼠标移入移出时的index传给autoPlay;
                index = ele;
            }
        }

还是传值吧,这样是比较优化的,用的次数多了,你就知道老师的方法是非常不错的!

0 回复 有任何疑惑可以回复我~
#1

qq_一梦两三年丶_0 提问者

嗯嗯,我就想知道这个思路,多谢啦
2017-01-31 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

老师说的那个bug如果不优化代码怎么解决

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信