javascript - Tab切换为什么不能重置?

查看:68
本文介绍了javascript - Tab切换为什么不能重置?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

HTML

  <nav>
        <ul>
            <li class="on"><a href="javascript:;" title="">前端</a></li>
            <li><a href="" title="">后端</a></li>
        </ul>
    </nav>

CSS

nav{
    width: 800px;
    height: 50px;
    border-bottom: 3px solid #f60;
}
nav ul{
    list-style: none;
}

nav li{
    width: 100px;
    height: 50px;
    line-height: 50px;
    float: left;
}
nav a{
    text-decoration: none;
    display: block;
    text-align: center;
    color: #000;
}

nav .on a{
    color: #fff;
    background: #f60;
}

JS

window.onload = function() {
    var tabs = document.getElementsByTagName('nav')[0].getElementsByTagName('a');
    for (var i = 0; i < tabs.length; i++) {
        tabs[i].index = i;
        tabs[i].onclick = function() {
            for (var j = 0; j < tabs.length; j++) {
               // alert( tabs[j].parentNode.nodeName       );
               tabs[j].parentNode.classList.remove('on');
            }
              //   this.parentNode.classList.add('on');
        };
    }
};

这个什么情况?为什么不能重置?

解决方案


表示用lz的代码可以正常删除class,gif中样式重新出现是因为我刷了浏览器。

第二张图是加上add后的效果。

<nav>
    <ul>
        <li class="on"><a href="javascript:;" title="">前端</a></li>
        <li><a href="javascript:;" title="">后端</a></li>
    </ul>
</nav>

突然发现我改了上面这段代码中的 后端的a标签。 lz不会是没写然后刷新了页面吧。。。。。。。

这篇关于javascript - Tab切换为什么不能重置?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆