首页 > 做了一个tab,明明指定的是onmouseover,但是只有点击一下才有用?

做了一个tab,明明指定的是onmouseover,但是只有点击一下才有用?

移动到上边的选项没有用,只有点击时才切换?
可是明明设置的是onmouseover啊?

<script>   
  function $(id){
            return typeof id==='string'?document.getElementById(id):id;
        }
        window.onload=function(){
            var titles=$('notes-tit').getElementsByTagName('li'),
                divs=$('notes-content').getElementsByTagName('ul');

                if(titles.length!=divs.length)
                    return;
                for(var i=0;i<titles.length;i++){
                    titles[i].id=i;
                    titles[i].onmouseover=function(){
                        for(var j=0;j<titles.length;j++){
                            titles[j].className="";
                            divs[j].style.display="none";
                        }
                        this.className="select";
                        divs[this.id].style.display="block";
                    }
                }
        }

    </script>

似乎又是js 闭包的问题。 可否把你js代码贴出来,我来改改。


其他问题没去测试,闭包可以这样写 你测试看看 
window.onload=function(){
    var titles=$('notes-tit').getElementsByTagName('li'),
        divs=$('notes-content').getElementsByTagName('ul');

        if(titles.length!=divs.length)
            return;
        for(var i=0;i<titles.length;i++){
            titles[i].id=i;
            (function(tag){
                titles[tag].onmouseover=function(){
                    for(var j=0;j<titles.length;j++){
                        titles[j].className="";
                        divs[j].style.display="none";
                    }
                    this.className="select";
                    divs[this.id].style.display="block";
                }
            })(i)
        }
}

【热门文章】
【热门文章】