简单实现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 相关文章推荐
Prototype ObjectRange对象学习
Jul 19 Javascript
小议javascript 设计模式 推荐
Oct 28 Javascript
js 实现 input type=&quot;file&quot; 文件上传示例代码
Aug 07 Javascript
jQuery内部原理和实现方式浅析
Feb 03 Javascript
使用jQuery在对象中缓存选择器的简单方法
Jun 30 Javascript
BOM之navigator对象和用户代理检测
Feb 10 Javascript
JS实现页面内跳转的简单代码
Sep 03 Javascript
JS实现标签滚动切换效果
Dec 25 Javascript
解决Linux无法正常安装与卸载Node.js的方法
Jan 19 Javascript
JavaScript门道之标准库
May 26 Javascript
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
js实现有趣的倒计时效果
Jan 19 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
php正则表达式(regar expression)
2011/09/10 PHP
批量去除PHP文件中bom的PHP代码
2012/03/13 PHP
php读取excel文件的简单实例
2013/08/26 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
javascript 函数使用说明
2010/04/07 Javascript
js实现全屏漂浮广告移入光标停止移动
2013/12/02 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
javascript 自定义回调函数示例代码
2014/09/26 Javascript
javascript 获取浏览器版本
2015/01/21 Javascript
js光标定位文本框回车表单提交问题的解决方法
2015/05/11 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
Angular 4中如何显示内容的CSS样式示例代码
2017/11/06 Javascript
angular2 ng2-file-upload上传示例代码
2018/08/23 Javascript
angularjs手动识别字符串中的换行符方法
2018/10/02 Javascript
JS继承定义与使用方法简单示例
2020/02/19 Javascript
[09:13]2014DOTA2国际邀请赛 中国区预选赛coser表演
2014/05/23 DOTA
python查询sqlite数据表的方法
2015/05/08 Python
Python 控制终端输出文字的实例
2019/07/12 Python
python Dijkstra算法实现最短路径问题的方法
2019/09/19 Python
详解在python操作数据库中游标的使用方法
2019/11/12 Python
python实现小世界网络生成
2019/11/21 Python
python:动态路由的Flask程序代码
2019/11/22 Python
利用python 读写csv文件
2020/09/10 Python
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
CSS3 不定高宽垂直水平居中的几种方式
2020/03/26 HTML / CSS
Bibloo荷兰:女士、男士和儿童的服装、鞋子和配饰
2019/02/25 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
质检的岗位职责
2013/11/17 职场文书
违反工作纪律检讨书
2014/02/15 职场文书
《我的第一本书》教学反思
2014/02/15 职场文书
经典广告词大全
2014/03/14 职场文书
副乡长群众路线教育实践活动个人对照检查材料
2014/09/19 职场文书
小学教师自我剖析材料
2014/09/29 职场文书
nginx从安装到配置详细说明(安装,安全配置,防盗链,动静分离,配置 HTTPS,性能优化)
2022/02/12 Servers