<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
#div2 div{
    width:500px;
    height:300px;
    background:#999;
    border:1px solid black;
    display:none;
}
#div1 input{
    width:50px;
    height:30px;
    border:none;
}
.bgcolor{
    background:blue;
}
</style>
<script>
window.onload=function()//执行JS之前,要保证默认(第一个)按钮有class属性,并且按钮对应选显卡的display属性为block
{
    var oDiv=document.getElementById('div1');
    var aBtn=oDiv.getElementsByTagName('input');//提取按钮的数组
    var oDiv1=document.getElementById('div2');
    var aDiv=oDiv1.getElementsByTagName('div');//提取选项卡的数组
    for(var i=0;i<aBtn.length;i++)//外层循环用来给每个按钮添加事件
    {
        aBtn[i].onclick=function()//添加事件
        {
            for(var i=0;i<aBtn.length;i++)//内层循环
            {
                aBtn[i].index=i;//给数组添加序列号
                aBtn[i].className='';//在执行事件之前将所有input的class属性清空
                aDiv[i].style.display='none';//在执行事件之前将所有选项卡的display属性改为none
            }
            this.className='bgcolor';//清空完之后,让this(当前发生事件的按钮)的class属性重新定义
            aDiv[this.index].style.display='block';///清空完之后,让发生事件所对应按钮的选项卡display属性定义为block
        }
    }
}
</script>
</head>
<body>
<div id="div1">
    <input class="bgcolor" type="button" value="新闻"/>
    <input type="button" value="体育"/>
    <input type="button" value="财经"/>
    <input type="button" value="军事"/>
</div>
<div id="div2">
    <div style="display:block;">新闻啊新闻,好新啊好新</div>
    <div>体育啊体育,好体啊好体</div>
    <div>财经啊财经,好财啊好财</div>
    <div>军事啊军事,好军啊好军</div>
</div>
</body>

js 选项卡实现的更多相关文章

  1. js 选项卡制作

    知识回顾,制作JS选项卡,仅供参考 html代码: <!DOCTYPE html> <html lang="en"> <head> <me ...

  2. 慕课编程题JS选项卡切换

    Javascript进阶篇的最后一节是一个选项卡切换的编程,要求效果如下. 这里涉及到两块,一个是内容的切换显示,一个是红色的边框样式切换. 内容切换可以用纯js代码实现,但当这里还需设置一个红色边框 ...

  3. 原生JS 选项卡代码实现

    可实现同页面多个选项卡 效果图: 代码实现: HTML部分 <div class="main" id="tabs"> <div class=& ...

  4. js选项卡切换效果

    选项卡切换在页面中比较常见,这里是我利用js闭包还有setTimeout定时器实现的一个比较实用的选项卡功能. <!DOCTYPE html> <html lang="en ...

  5. js 选项卡

    <html><head lang="en"> <meta charset="UTF-8"> <title>Tab ...

  6. js选项卡

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. html锚点的作用和js选项卡锚点跳转的使用

    location是javascript里边管理地址栏的内置对象,比如location.href就管理页面的url,用location.href=url就可以直接将页面重定向url.而location. ...

  8. 原生js选项卡

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. js 选项卡封装

    function tab(input,div){ for(var i = 0; i < input.length; i++){ input[i].index = i; input[i].oncl ...

随机推荐

  1. [cocos2dx]2.2到3.1(3.0)升级帮助

    摘要: cocos2dx 是一款优秀的多平台,专为2D游戏设计的引擎. 在活跃的开源社区的推进下, 越发稳定和强大. 2.x -> 3.x的更新幅度很大, 性能的提升和功能的丰富也非常明显. 但 ...

  2. [转载]ExtJs4 笔记(3) Ext.Ajax 对ajax的支持

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)     本篇主要介绍一下ExtJs常用的几个对JS语法的扩展支持,包括Ajax封装,函数事 ...

  3. hdu-5927 Auxiliary Set(树形dp)

    题目链接: Auxiliary Set Time Limit: 9000/4500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Othe ...

  4. UESTC 32 树上战争(Battle on the tree)

    这题其实很简单,每个人肯定都往上走,才能保证尽快赢,所以无非是看谁离根节点近,即深度小..用并查集中的findset思想,不断找父节点一直到根节点来找深度就可以了. 代码: #include < ...

  5. SSO - 我们为何需要单点登录系统

    SSO,Single Sign On,也就是单点登录,保证一个账户在多个系统上实现单一用户的登录 现在随着网站的壮大,很多服务会进行拆分,会做SOA服务,会使用dubbo做微服务,或者简单的小型分布式 ...

  6. Linux安装、卸载软件

    在linux环境中,尤其是cenos中安装过一些软件,一般是二进制安装与源码安装,现小结一下linux中的安装与卸载. 一.通常Linux应用软件的安装包有三种: 1) tar包,如software- ...

  7. 关于SVN版本分支合并的知识

    分支的合并类型 合并的工作是把主干或者分支上合并范围内的所有改动列出,并对比当前工作副本的内容,由合并者手工修改冲突,然后提交到服务器的相应目录里.如果当前工作副本是主干,则合并的范围是分支上的改动, ...

  8. emberjs重写补充类之reopen方法和reopenClass方法

    无需一次性将类定义完全,你可以使用reopen方法来重新打开(reopen)一个类并为其定义新的属性. Person.reopen({ isPerson: true }); Person.create ...

  9. 谁可以说出HashMap和HashSet的相同点和不同点。

    谁可以说出HashMap和HashSet的相同点和不同点. 2011-11-15 20:46ruoshui_t | 浏览 20310 次  Perl 2011-11-15 21:17 #知道行家专业创 ...

  10. windows phone 8.0 app 移植到windows10 app 页面类

    phone:PhoneApplicationPage    全部替换为Page phone:WebBrowser               全部替换为   WebView IsScriptEnabl ...