JavaScript实现的原生态Tab标签页功能【兼容IE6】


Posted in Javascript onSeptember 18, 2017

本文实例讲述了JavaScript实现的原生态Tab标签页功能。分享给大家供大家参考,具体如下:

标签页是一个很常见的东西,在一些框架中也就很常见的,

但未必所有人都知道怎么写,很多人知道怎么在网上复制一份是真的,

这样不好,往往需要用大量的时间去修改网上复制下来的东西,还不如自己写一份快。

一、基本目标

创建一个如下的标签页,在IE8中与谷歌浏览器中的效果如下,几乎没有区别

谷歌浏览器:

JavaScript实现的原生态Tab标签页功能【兼容IE6】

IE8:

JavaScript实现的原生态Tab标签页功能【兼容IE6】

二、制作过程

1、首先布置好场景,在一个图层内:

图层1~图层4四个超级链接是一个图层,然后各自的图层的内容分别是各自的图层,默认是图层1的内容显示,而图层2~4则默认不显示

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<body>
<div style="border:1px solid #000000;float:left;wight:10%;">
<div>
<a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="div_tab(this)">图层1</a>
<a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="div_tab(this)">图层2</a>
<a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="div_tab(this)">图层3</a>
<a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="div_tab(this)">图层4</a>
</div>
<div id="tabdiv1" style="display:block;">aaaaaaaaaaaaaaaaaaa</div>
<div id="tabdiv2" style="display:none;">bbbbbbbbbbbbbbbbb</div>
<div id="tabdiv3" style="display:none;">cccccccccccccccc</div>
<div id="tabdiv4" style="display:none;">dddddddddddddd</div>
</div>
<div style="clear:both"></div>
</body>
</html>

2、然后是每一个超级链接都传递自身到Javascript脚本处理,注意的是,如果对超级链接添加Javascript脚本,必须在写上href,并且这个链接指向javascript:void(0),随后,再加上onclick属性。之后,得到整个超级链接的Javascript根据超级链接的文本进行判断,如果是图层1,则显示图层1,隐藏其它的所有图层,以此类推。注意的是,a是没有value属性的,所以这里根据其内文本进行判断。

<script>
function div_tab(obj){
  switch(obj.innerHTML){
    case "图层1":
      document.getElementById("tabdiv1").style.display="block";
      document.getElementById("tabdiv2").style.display="none";
      document.getElementById("tabdiv3").style.display="none";
      document.getElementById("tabdiv4").style.display="none";
      break;
    case "图层2":
      document.getElementById("tabdiv1").style.display="none";
      document.getElementById("tabdiv2").style.display="block";
      document.getElementById("tabdiv3").style.display="none";
      document.getElementById("tabdiv4").style.display="none";
      break;
    case "图层3":
      document.getElementById("tabdiv1").style.display="none";
      document.getElementById("tabdiv2").style.display="none";
      document.getElementById("tabdiv3").style.display="block";
      document.getElementById("tabdiv4").style.display="none";
      break;
    case "图层4":
      document.getElementById("tabdiv1").style.display="none";
      document.getElementById("tabdiv2").style.display="none";
      document.getElementById("tabdiv3").style.display="none";
      document.getElementById("tabdiv4").style.display="block";
      break;
  }
}
</script>

更多关于JavaScript相关内容可查看本站专题:《JavaScript页面元素操作技巧总结》、《javascript面向对象入门教程》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery is()函数用法3例
May 06 Javascript
JavaScript匿名函数用法分析
Feb 13 Javascript
JavaScript手机振动API
Jun 11 Javascript
node.js实现快速截图
Aug 27 Javascript
React-router 4 按需加载的实现方式及原理详解
May 25 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
Jul 30 Javascript
详解node服务器中打开html文件的两种方法
Sep 18 Javascript
vue项目初始化到登录login页面的示例
Oct 31 Javascript
Javascript Worker子线程代码实例
Feb 20 Javascript
JavaScript this关键字指向常用情况解析
Sep 02 Javascript
一篇文章了解正则表达式的替换技巧
Feb 24 Javascript
vue+echarts实现多条折线图
Mar 21 Vue.js
vue多种弹框的弹出形式的示例代码
Sep 18 #Javascript
JavaScript实现body内任意节点的自定义属性功能示例
Sep 18 #Javascript
node+express+ejs使用模版引擎做的一个示例demo
Sep 18 #Javascript
jQuery实现对网页节点的增删改查功能示例
Sep 18 #jQuery
详解node服务器中打开html文件的两种方法
Sep 18 #Javascript
详解利用 Express 托管静态文件的方法
Sep 18 #Javascript
Express使用html模板的详细代码
Sep 18 #Javascript
You might like
星际争霸 Starcraft 发展史
2020/03/14 星际争霸
MYSQL环境变量设置方法
2007/01/15 PHP
五款PHP代码重构工具推荐
2014/10/14 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
jquery select 设置默认选中的示例代码
2014/02/07 Javascript
jquery实现在页面加载完毕后获取图片高度或宽度
2014/06/16 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
javascript封装 Cookie 应用接口
2015/08/07 Javascript
JavaScript添加随滚动条滚动窗体的方法
2016/02/23 Javascript
基于Bootstrap+jQuery.validate实现表单验证
2016/05/30 Javascript
Node.js获取前端ajax提交的request信息
2017/02/20 Javascript
JavaScript中Hoisting详解 (变量提升与函数声明提升)
2017/08/18 Javascript
基于Taro的微信小程序模板消息-获取formId功能模块封装实践
2019/07/15 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
JS跨浏览器解析XML应用过程详解
2020/10/16 Javascript
Python中的模块和包概念介绍
2015/04/13 Python
python中对数据进行各种排序的方法
2019/07/02 Python
python 三元运算符使用解析
2019/09/16 Python
python构造IP报文实例
2020/05/05 Python
html5中监听canvas内部元素点击事件的三种方法
2019/04/28 HTML / CSS
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
香蕉共和国工厂店:Banana Republic Factory
2018/06/09 全球购物
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
Flesh Beauty官网:露华浓集团旗下彩妆品牌
2021/02/15 全球购物
C#软件工程师英语面试题
2015/06/07 面试题
乡下人家教学反思
2014/02/01 职场文书
分层教学实施方案
2014/03/19 职场文书
财务人员个人工作总结
2015/02/27 职场文书
Python实现简单的猜单词
2021/06/15 Python
SQL Server数据库备份和恢复数据库的全过程
2022/06/14 SQL Server