注册 登录
编程论坛 JavaScript论坛

请教个问题,各位大神帮帮忙,谢谢了哦

wlf1371234 发布于 2011-11-26 14:42, 798 次点击
<ul id="menu">
<li><a href="index.asp" class="but0_active">首页</a></li>
<li><a href="article.asp" class="but1">文章</a></li>
<li><a href="album.asp" class="but2">图片</a></li>
</ul>

当点击的时候当前的class改名为"but"+i+"_active",其他链接的class为"but"+i
4 回复
#2
javayang2011-11-26 15:22
<script type="text/javascript">
window.onload=function(){
    var lis=document.getElementById("ul").getElementsByTagName("li");
    for(var i=0;i<lis.length;i++){
       (function(i){
               lis[i].onclick=function(){
                for(var y=0;y<lis.length;y++){
                        lis[y].className="but"+y;
                }
                this.className="but"+i+"_active";
            }
        })(i);
    }
}

</script>
#3
wlf13712342011-11-26 21:59
哈哈,能用了,非常感谢!
我是初学者,搞了半天没搞出来。
谢谢
#4
wlf13712342011-11-26 22:12
回复 2楼 javayang
想请教下最后面的(i)是干什么的呢?
#5
javayang2011-11-29 17:32
传参数
这么看你就懂了
for(var i=0;i<a.length;i++){
    (function(s){})(i)//把for里i的值给s
}

for(var i=0;i<2;i++){
    function s(s){
   
    }
    s(i)
}//这个和上个相等的


[ 本帖最后由 javayang 于 2011-11-30 09:01 编辑 ]
1