<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>tab切换</title>
<style type="text/css">
* {padding: 0;margin: 0;}
  li {list-style: none;}
.wrapper {
  margin: 0 auto;
  width: 100%;
  max-width: 1140px;
}
.tabbox {
  margin: 40px auto;
  width: 400px;
  height: 200px;
  border: 1px solid #f70;
  overflow: hidden;

}
.tabbox .tab-tit{
  position: relative;
  height: 40px;
}
ul {
  position: absolute;
  left: -1px;
  width: 401px;
  height: 40px;
  line-height: 40px;
  background-color: #eaeaea;
}
ul li {
  float: left;
  border-left: 1px solid #f70;
  border-bottom: 1px solid #f70;
  text-align: center;
  width: 99px;
  height: 40px;
  overflow: hidden;
}
.clear {clear: both;}
.select {
  padding-right: 1px;
  border-bottom: none;
  background-color: #fff;
}
a:link, a:visited {
  font-size: 16px;
  font-weight: bold;
  color: #888;
  text-decoration: none;
}
.select a {
  color: #333;
}
a:hover, a:active {
  color: #f20;
  font-weight: bold;
}
.tab-txt {
  width: 400px;
  padding: 40px;
  overflow: hidden;
}
.demo {display: none;}
.tab-txt p {
  line-height: 40px;
}

</style>
</head>
<body>
  <div class="wrapper">
    <div id="tabBox" class="tabbox">
      <div id="tabTit" class="tab-tit">
        <ul>
          <li class="select"><a href="javascript:;">女枪</a></li>
          <li><a href="javascript:;">提莫</a></li>
          <li><a href="javascript:;">盖伦</a></li>
          <li><a href="javascript:;">剑圣</a></li>
        </ul>
      </div>
<!-- <div class="clear"></div> -->
    <div id="tabTxt" class="tab-txt">
      <div class="demo" style="display: block;">
        <p>我有两把枪,一把叫射,另一把叫,啊~</p>
        <p>你有一双迷人的眼睛,我非常喜欢!</p>
      </div>
      <div class="demo">
        <p>我去前面探探路</p>
        <p>提莫队长正在待命!</p>
      </div>
      <div class="demo">
        <p>放马过来吧,你会死的很光荣的!</p>
        <p>快点儿结束吧,我头有点儿转晕了……</p>
      </div>
      <div class="demo">
        <p>我的剑就是你的剑。</p>
        <p>眼睛多,看东西才会更加清楚</p>
      </div>

    </div>
  </div>

</div>

<script type="text/javascript">
function $(id) {
  return typeof id === "string" ? document.getElementById(id) : id;
}
window.onload = function() {
  var tits = $("tabTit").getElementsByTagName("li");
  var txts = $("tabTxt").getElementsByClassName("demo");
  if(tits.length != txts.length) {return;}
  for(var i=0,l=tits.length; i<l; i++) {
    tits[i].id = i;
    tits[i].onmouseover = function() {
      for(var j=0; j<l; j++) {
      tits[j].className = "";
      txts[j].style.display = "none";
     }
    this.className = "select";
    txts[this.id].style.display = "block";
  }
}

</script>
</body>
</html>

几种tab切换尝试 原生js的更多相关文章

  1. 标签页(tab)切换的原生js,jquery和bootstrap实现

    概述 这是我在学习课程Tab选项卡切换效果时做的总结和练手. 原课程中只有原生js实现,jquery和bootstrap实现是我自己补上的. 本节内容 标签页(tab)切换的原生js实现 标签页(ta ...

  2. 瀑布流的三种实现方式(原生js+jquery+css3)

    前言 项目需求要弄个瀑布流的页面,用的是waterfall这个插件,感觉还是可以的,项目赶就没自己的动手写.最近闲来没事,就自己写个.大致思路理清楚,还是挺好实现的... 原生javascript版 ...

  3. 又一Tab切换效果(js实现)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. 原生JS—实现图片循环切换的两种方法

    今天我们主要讲讲如何使用原生JS实现图片的循环切换的方法.多余的话我们就不多说了,我们一个一个开始讲吧. 1  原生JS实现图片循环切换 -- 方法一 在上栗子之前我们先简单介绍一下所用的一些知识点. ...

  5. 原生js实现tab切换

    //通过原生js实现table切换<html><head><meta http-equiv="Content-Type" content=" ...

  6. 原生JS实现tab切换--web前端开发

    tab切换非常常见,应用非常广泛,比较实用,一般来说是一个网站必不可少的一个效果.例如:https://123.sogou.com/中的一个tab部分: 1.案例源代码 <!DOCTYPE ht ...

  7. 前端跨域问题相关知识详解(原生js和jquery两种方法实现jsonp跨域)

    1.同源策略 同源策略(Same origin policy),它是由Netscape提出的一个著名的安全策略.同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正 ...

  8. 使用原生js与jQuery分别实现一个简单的tab页签

    tab页签通常适用于空间有限而内容较多同时兼顾页面美观度不给用户一种信息过量视觉疲劳的情形.使用面非常广,下面我们用两种方法简单实现之. 首先,构建页面元素.页签的可点击部分我们通常用列表来承载,包括 ...

  9. 原生js实现tab选项卡里内嵌图片滚动特效代码

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

随机推荐

  1. 【例题 7-2 UVA - 11059】Maximum Product

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] C语言for循环练习题 [代码] /* 1.Shoud it use long long ? 2.Have you ever tes ...

  2. 【hihocoder 1564】同步H公司的终端

    [链接]http://hihocoder.com/problemset/problem/1564 [题意] 在这里写题意 [题解] 如下图 (上图中节点旁边的红色数字为它的权值) 从叶子节点开始考虑. ...

  3. 微信支付v2开发(2) 微信支付账号体系

    本文介绍微信支付账号体系各参数. 商户在微信公众平台提交申请资料以及银行账户资料,资料审核通过并签约后,可以获得表6-4所示帐户(包含财付通的相关支付资金账户),用于公众帐号支付. 帐号 作用 app ...

  4. OC学习篇之---Foundation框架中的NSString对象和NSMutableString对象

    今天在在来继续看一下Foundation框架中的常用对象:NSString和NSMutableString 在OC中NSString对象是不可变的,和Java中的String一样的,而NSMutabl ...

  5. Ajax之旅(二)--XMLHttpRequest

         上文中提到的Ajax的异步更新.主要使用XMLHttpRequest对象来实现的,XMLHttpRequest对象能够在不向server提交整个页面的情况下,实现局部更新网页. 当页面所有载 ...

  6. Delegates, Events and Singletons with Unity3D – C#

     在这里我将演示怎样创建代表. 事件和Singletons 在一起工作. 本教程为 Unity3D 编写. 我想知道这为什么?作为一个年轻的自学程序猿,我常常发现自己写tons 和布尔的语句,以确 ...

  7. stm32四种输入

    1.          上拉输入(GPIO_Mode_IPU)   上拉输入就是信号进入芯片后加了一个上拉电阻,再经过施密特触发器转换成0.1信号,读取此时的引脚电平为高电平:   2.       ...

  8. openCV 和GDI画线效率对比

    一. 由于项目需要,原来用GDI做的画线的功能,新的项目中考虑到垮平台的问题,打算用openCV来实现,故此做个效率对比. 二. 2点做一条线,来测试效率. 用了同样的画板大小---256*256的大 ...

  9. 一位90后程序员的自述:如何从年薪3w到30w!

    初入职场之时,大多数人都应该考虑过这样的一个问题,如何找到一种实用,简化web流程的方法,在工作之中能有所提升和突破. 学好哪些?基础必须精通! 九层之塔,起于垒土;千里之行,始于足下.入门之前,这些 ...

  10. AE内置Command控件使用

    樱木 原文 AE内置Command控件使用 直接使用AE内置的Command控件来完成功能 1.拉框放大 /// <summary> /// 放大 /// </summary> ...