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 相关文章推荐
用js重建星际争霸
Dec 22 Javascript
Java File类的常用方法总结
Mar 18 Javascript
jQuery原生的动画效果
Jul 10 Javascript
jqTransform美化表单
Oct 10 Javascript
JS中innerHTML和pasteHTML的区别实例分析
Jun 22 Javascript
Vue.js每天必学之构造器与生命周期
Sep 05 Javascript
js生成随机数方法和实例
Jan 17 Javascript
微信小程序中子页面向父页面传值实例详解
Mar 20 Javascript
解决Vue 浏览器后退无法触发beforeRouteLeave的问题
Dec 24 Javascript
简单实现vue中的依赖收集与响应的方法
Feb 18 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 Vue.js
微信小程序用户授权最佳实践指南
May 08 Javascript
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
《Re:从零开始的异世界生活》剧情体验,手游新作定名
2020/04/09 日漫
PHP数组对象与Json转换操作实例分析
2019/10/22 PHP
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
原生js实现半透明遮罩层效果具体代码
2013/06/06 Javascript
ScrollDown的基本操作示例
2013/06/09 Javascript
ECMAScript6函数默认参数
2015/06/12 Javascript
基于jquery实现省市联动特效
2015/12/17 Javascript
浅析Bootstrap验证控件的使用
2016/06/23 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
2017/01/30 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
Bootstrap Multiselect 常用组件实现代码
2017/07/09 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
使用Dropzone.js上传的示例代码
2017/10/10 Javascript
JS脚本加载后执行相应回调函数的操作方法
2018/02/28 Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
2019/04/17 Javascript
关于JavaScript中异步/等待的用法与理解
2020/11/18 Javascript
[08:02]DOTA2牵红线 zhou神抱得美人归
2014/03/22 DOTA
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
2017/02/14 Python
python实现稀疏矩阵示例代码
2017/06/09 Python
Python 处理数据的实例详解
2017/08/10 Python
对Pandas DataFrame缺失值的查找与填充示例讲解
2018/11/06 Python
pandas实现将dataframe满足某一条件的值选出
2019/06/12 Python
分析运行中的 Python 进程详细解析
2019/06/22 Python
PYTHON如何读取和写入EXCEL里面的数据
2019/10/28 Python
Python使用文件操作实现一个XX信息管理系统的示例
2020/07/02 Python
Python 多进程原理及实现
2020/12/21 Python
CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性
2014/09/02 HTML / CSS
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
C面试题
2015/10/08 面试题
韩国商务邀请函
2014/01/14 职场文书
《欢乐的泼水节》教学反思
2014/04/22 职场文书
单位消防安全责任书
2014/07/23 职场文书
如何用PHP实现多线程编程
2021/05/26 PHP
OpenCV-Python直方图均衡化实现图像去雾
2021/06/07 Python
每日六道java新手入门面试题,通往自由的道路
2021/06/30 Java/Android