简单实现js选项卡切换效果


Posted in Javascript onFebruary 09, 2017

本文实例为大家分享了js选项卡切换效果的具体代码,供大家参考,具体内容如下

实现思路:

1、首先获取id元素。
2、for循环历遍按钮元素添加onclick事件。
3、排他思想,点击按钮时设置所有选项卡按钮样式为空,利用this关键字指定当前选项卡获得高亮样式。
4、下面的多个div内容块以此类推。

源代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>简单的选项卡切换(仿Hao123导航)</title>
</head>
<style>
 * {
  margin: 0;
  padding: 0;
 }
 .box {
  width: 278px;
  margin: 0 auto;
  margin-top: 100px;
  background-color: #F7F7F8;
  overflow: hidden;
 }
 .btn button {
  outline:none;
  color: #616161;
  font:14px/100% arial,"Hiragino Sans GB","Hiragino Sans GB W3",\5b8b\4f53;
  border: none;
  height: 34px;
  width: 51px;
  background-color: #F7F7F8;
  float: left;
  cursor: pointer;
 }
 .box .btn i {
  height: 16px;
  border-left: 1px solid #EAEAEA;
  margin-top: 9px;
  float: left;
  _font-size: 0px;
 }
 .box .btn button:hover {
  color: #0AA770;
 }
 .box .btn s {
  cursor: pointer;
  text-decoration: none;
  font:14px/34px arial,"Hiragino Sans GB","Hiragino Sans GB W3",\5b8b\4f53;
 }
 #box1 #btns .clickbtn {
  border-top: 1px solid #0AA770;
  color: #0AA770;
 }
 .bottom {
  display: none;
  position: absolute;
  width: 278px;
  height: 110px;
  color: #fff;
  text-align: center;
  font:14px/100% arial,"Hiragino Sans GB","Hiragino Sans GB W3",\5b8b\4f53;
 }
 .bottom a {
  color: #fff;
  position: relative;
  top: -20px;
  left: 0px;
  text-decoration: none;
 }
 .bottom a:hover {
  text-decoration: underline;
 }
</style>
<script>
 window.onload = function(){
  var btns = document.getElementById("btns").getElementsByTagName("button");
  var divs = document.getElementById("bottomdivs").getElementsByTagName("div");
  btns[0].className = "clickbtn";
   for(var i = 0;i<btns.length;i++){
    btns[i].index = i;
    btns[i].onclick = function(){
     //alert(this.index);
     for(var j = 0;j<btns.length;j++){
      btns[j].className = "";
     }
     this.className = "clickbtn";
     for(var b = 0;b<btns.length;b++){
      divs[b].style.display = "none";
     }
     divs[this.index].style.display = "block";

    }
  }
 }
</script>
<body>
<div class="box" id="box1">
 <div class="btn" id="btns">
  <button>推介</button>
  <i></i>
  <button>社会</button>
  <i></i>
  <button>娱乐</button>
  <i></i>
  <button>军事</button>
  <i></i>
  <button>体育</button>
  <s>+</s>
 </div>
 <div id="bottomdivs">
  <div class="bottom" style="display: block">
   <img src="images/01.jpg" alt="">
   <h4><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >小伙直播时遭遇“闹鬼”事件 全过程被拍下</a></h4>
  </div>
  <div class="bottom">
   <img src="images/02.jpg" alt="">
   <h4><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >男子穿新郎装背充气娃娃游街</a></h4>
  </div>
  <div class="bottom">
   <img src="images/03.jpg" alt="">
   <h4><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >她满足所有人对才女的幻想</a></h4>
  </div>
  <div class="bottom">
   <img src="images/04.jpg" alt="">
   <h4><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >王毅回应中美是否会在南海发生冲突</a></h4>
  </div>
  <div class="bottom">
   <img src="images/05.jpg" alt="">
   <h4><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >刘翔与娇妻秀恩爱 豪车曝光车牌太抢眼</a></h4>
  </div>
 </div>
</div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
优化innerHTML操作(提高代码执行效率)
Aug 20 Javascript
IE关闭时判断及AJAX注销案例学习
Feb 18 Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
Apr 10 Javascript
javascript两种function的定义介绍及区别说明
May 02 Javascript
如何实现textarea里的不同文本显示不同颜色
Jan 20 Javascript
JavaScript获取页面上被选中文字的方法技巧
Mar 13 Javascript
BootStrap入门教程(一)之可视化布局
Sep 19 Javascript
Bootstrap源码解读导航条(7)
Dec 23 Javascript
Require.js的基本用法详解
Jul 03 Javascript
在一个页面实现两个zTree联动的方法
Dec 20 Javascript
javascript标准库(js的标准内置对象)总结
May 26 Javascript
react 项目中引入图片的几种方式
Jun 02 Javascript
原生JS轮播图插件
Feb 09 #Javascript
jQuery页面弹出框实现文件上传
Feb 09 #Javascript
如何在Angular2中使用jQuery及其插件的方法
Feb 09 #Javascript
详解angular2采用自定义指令(Directive)方式加载jquery插件
Feb 09 #Javascript
vue-router跳转页面的方法
Feb 09 #Javascript
基于JavaScript实现复选框的全选和取消全选
Feb 09 #Javascript
jquery.cookie.js的介绍与使用方法
Feb 09 #Javascript
You might like
模仿OSO的论坛(五)
2006/10/09 PHP
php用正则表达式匹配URL的简单方法
2013/11/12 PHP
PHP与MYSQL中UTF8编码的中文排序实例
2014/10/21 PHP
PHP中函数gzuncompress无法使用的解决方法
2017/03/02 PHP
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
2007/03/27 Javascript
javascript options属性集合操作代码
2009/12/28 Javascript
jquery中的sortable排序之后的保存状态的解决方法
2010/01/28 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
js 取时间差去掉周六周日实现代码
2012/12/25 Javascript
没有document.getElementByName方法
2013/08/19 Javascript
JavaScript设置首页和收藏页面的小例子
2013/11/11 Javascript
模仿password输入框的实现代码
2016/06/07 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
快速解决js中window.location.href不工作的问题
2016/11/02 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
2017/06/08 Javascript
详解Vue 事件修饰符capture 的使用
2017/12/29 Javascript
[52:12]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
[01:02:32]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第二场 2月26日
2021/03/11 DOTA
分析用Python脚本关闭文件操作的机制
2015/06/28 Python
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
Python使用requests及BeautifulSoup构建爬虫实例代码
2018/01/24 Python
Python+PyQT5的子线程更新UI界面的实例
2019/06/14 Python
如何用Python来理一理红楼梦里的那些关系
2019/08/14 Python
Python使用os.listdir和os.walk获取文件路径
2020/05/21 Python
python3环境搭建过程(利用Anaconda+pycharm)完整版
2020/08/19 Python
python小技巧——将变量保存在本地及读取
2020/11/13 Python
HTML5 本地存储和内容按需加载的思路和方法
2011/04/07 HTML / CSS
韩国邮政旗下生鲜食品网上超市:epost
2016/08/27 全球购物
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
日本最大的购物网站乐天市场国际版:Rakuten Global Market(支持中文)
2020/02/03 全球购物
简历的自我评价范文
2014/02/04 职场文书
模特大赛策划方案
2014/05/28 职场文书
低碳日宣传活动总结
2014/07/09 职场文书
2014年教研室工作总结
2014/12/06 职场文书
学校标语口号大全
2015/12/26 职场文书
mysql升级到5.7时,wordpress导数据报错1067的问题
2021/05/27 MySQL