tab切换 js制作 index和this的应用

Posted @binglong180

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tab切换 js制作 index和this的应用相关的知识,希望对你有一定的参考价值。

这个问题刚开始的时候挺纠结的,怎么从getelementsByTagName()获得,用index和this即可做到,还有的应用到数组的遍历具体看下面的代码吧!

html和js代码

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>TAB切换</title>
    <link href="css/tab.css" rel="stylesheet">
</head>

<body>
<div class="div_bg">
    <ul id="bg">
        <li id="bg1" class="nobg" onmouseover="tab()"><a class="white">小说</a></li>
        <li id="bg2" class="nobg" onmouseover="tab()"><a class="white">非小说</a></li>
        <li id="bg3" class="nobg"><a class="white">少儿</a></li>
    </ul>
    <div id="book1">
        <a href="#" target=_blank>1.时间旅行者的妻子</a><br>
        <a href="#" target=_blank>2.女心理师(下)</a><br>
        <a href="#" target=_blank>3.鬼吹灯之精绝古城</a><br>
        <a href="#" target=_blank>4.女心理师(上)</a><br>
        <a href="#" target=_blank>5.小时候</a><br>
        <a href="#" target=_blank>6.追风筝的人</a><br>
        <a href="#" target=_blank>7.盗墓笔记2</a><br>
        <a href="#" target=_blank>8.输赢</a>
    </div>
    <div id="book2">
        <a href="#" target=_blank>1.人生若只如初见</a><br>
        <a href="#" target=_blank>2.高效能人士的七个..</a><br>
        <a href="#" target=_blank>3.求医不如求己</a><br>
        <a href="#" target=_blank>4.人体使用手册</a><br>
        <a href="#" target=_blank>5.孩子,把你的手给我</a><br>
        <a href="#" target=_blank>6.别笑!我是英文单词书</a><br>
        <a href="#" target=_blank>7.人体经络使用手册</a><br>
        <a href="#" target=_blank>8.股市稳赚</a>
    </div>
    <div id="book3">
        <a href="#" target=_blank>1.斯凯瑞金色童书?..</a><br>
        <a href="#" target=_blank>2.哈利?波特与“混..</a><br>
        <a href="#" target=_blank>3.不一样的卡梅拉(..</a><br>
        <a href="#" target=_blank>4.它们是怎么来的</a><br>
        <a href="#" target=_blank>5.五?三班的坏小子..</a><br>
        <a href="#" target=_blank>6.男生日记</a><br>
        <a href="#" target=_blank>7.哈利?波特与魔法石</a><br>
        <a href="#" target=_blank>8.噼里啪啦丛书(全7册)</a>
    </div>
</div>
</body>
<script type="text/javascript">
    window.onload=function(){
            var  list = document.getElementsByTagName("li");
            for(var i=0;i<list.length;i++){
                list[i].index=i;
                list[i].onmousemove=function(){
            //获得当前元素的下表
var index = this.index;
            //给每一个元素恢复原始
for(var i=0;i<3;i++){ document.getElementById("bg"+(i+1)).className="nobg"; document.getElementById("book"+(i+1)).style.display="none"; }
            //对选择的元素添加样式 document.getElementById(
"bg"+(index+1)).className="bg"; document.getElementById("book"+(index+1)).style.display="block"; } } } </script> </html>

css代码

*{
    margin:0;
    padding: 0;
    font-family: "Arial", "微软雅黑";
    font-size: 12px;
    line-height: 23px;
}
ul,li{list-style: none;}
li{float: left; margin-right: 1px;}
.div_bg{
    background-image:url(../images/bg.jpg);
    background-repeat:no-repeat;
    width:169px;
    height:290px;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding: 50px 0 0 15px;
    position: relative;
}
.div_bg div{
    clear: both; padding-top: 10px;}
.white{font-size:12px;
    color:#FFFFFF;
    padding-top:2px;
    cursor:pointer;
}
.white:hover{font-size:12px;
    color:#FFFFFF;
    padding-top:2px;
    cursor:pointer;
}
a {
    color: #06329b;text-decoration: none;line-height:24px;
}
a:hover {
    color: #cc0000;text-decoration: none;line-height:24px;
}
.bg{background-image:url(../images/menu1.gif);
    background-repeat:no-repeat;
    height:23px;
    width:47px;
    text-align:center;}

.nobg{background-image:url(../images/menu2.gif);
    background-repeat:no-repeat;
    height:23px;
    width:47px;
    text-align:center;
}
#book2,#book3{
    display: none;
}
.div_bg div{
    position: absolute;
    top: 80px;
}

 




以上是关于tab切换 js制作 index和this的应用的主要内容,如果未能解决你的问题,请参考以下文章

通过案例 详解点击事件获取li的index,并切换对应的图片,排他思想,闭包,bind,let,jquery简单应用,简单的tab栏制作-初学者html+css+js练习demo

Jquery 实现点击tab切换页签

jQuery图片tab栏切换

tab切换 2

公用tab切换

第28天:js-Tab栏切换封装函数