JS实现完全语义化的网页选项卡效果代码


Posted in Javascript onSeptember 15, 2015

本文实例讲述了JS实现完全语义化的网页选项卡效果代码。分享给大家供大家参考。具体如下:

这是一款完全语义化的JS网页选项卡,包括了两种用法,一种是点击式,另一种是滑动门式,具体用哪一种要根据你自己的需要了,滑动门是在鼠标经过时触发,选项卡则是需要鼠标点击的。

运行效果截图如下:

JS实现完全语义化的网页选项卡效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>语义化的网页选项卡</title>
<style type="text/css">
 *{margin:0;padding:0;font-size:13px;line-height:1.5;}
 body{padding:20px;}
 .cur{color:#f60;border-bottom:1px solid #fff;font-weight:bold;background:#fff;cursor:default;}
 #tab_,dl{position:relative;float:left;height:100px;width:300px;}
 h4,dt{float:left;height:20px;margin:0 0 0 8px;display:inline;line-height:20px;width:60px;border:1px solid #ccc;position:relative;z-index:11;text-align:center;font-weight:normal;cursor:pointer;background:#eee;}
 .c,dd{position:absolute;top:21px;border:1px solid #ccc;left:0;width:250px;padding:20px;overflow:hidden;display:block;}
 #tab_{clear:left;}
 h1{clear:left;padding:10px 0}
 #tab_1.cur{color:#f60}
 #tab_2.cur{color:blue}
 #tab_3.cur{color:green}
</style>
</head>
<body>
<h1>mouseover</h1>
<dl id="tab">
 <dt>美国</dt>
 <dd>我都不怕</dd>
 <dt>朝鲜</dt>
 <dd>谁都怕我</dd>
 <dt>某国</dt>
 <dd>我谁都怕</dd>
</dl>
<h1>click</h1>
<div id="tab_">
 <h4>orange</h4>
 <div class="c">桔红</div>
 <h4>blue</h4>
 <div class="c">蓝色</div>
 <h4>green</h4>
 <div class="c">绿色</div>
</div>
<script type="text/javascript">
function id(elem) {return document.getElementById(elem)}
function show(elem) {elem.style.display = "";}
function hide(elem) {elem.style.display = "none";}
function next( elem ) {
 do {
 elem = elem.nextSibling;
 } while ( elem && elem.nodeType != 1 );
 return elem;
}
function tab(a, p) {
 var p = (p === undefined) ? {e:"onclick",n:1} : p,
  node = id(a).firstChild,
  x = [];
 p.e = (p.e === undefined) ? "onclick" : p.e;
 p.n = (p.n === undefined) ? 1 : p.n;
 node=(node.nodeType !== 1)?next(node):node;
 for (var i = 1, node; node; i++, node = next(node)) {
  x[i] = node;
 }
 for (var i = 1; x[i]; i++) {
  if(i % 2 == 0){hide(x[i]);x[i-1].id=a+(i/2)}
  x[p.n*2-1].className = "cur";
  show(x[p.n*2]);
  temp = function (i) {
   if (i % 2 == 1) {
    x[i][p.e] = function () {
     for (var j = 1; x[j]; j++) {
      if (j % 2 == 0) {
       hide(x[j]);
       x[j-1].className = ""
      }
     }
     show(x[i+1]);
     x[i].className = "cur"
    }
   } else {
    return null
   }
  }(i)
 }
}
tab("tab",{e:"onmouseover",n:2});
tab("tab_")
</script>
</body>
</html>

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

Javascript 相关文章推荐
Javascript计算两个marker之间的距离(Google Map V3)
Apr 26 Javascript
js Map List 遍历使用示例
Jul 10 Javascript
小结Node.js中非阻塞IO和事件循环
Sep 18 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
Nov 08 Javascript
jQuery layui常用方法介绍
Jul 25 Javascript
AngularJs Dependency Injection(DI,依赖注入)
Sep 02 Javascript
bootstrap可编辑下拉框jquery.editable-select
Oct 12 jQuery
Vue数据监听方法watch的使用
Mar 28 Javascript
element-ui 表格数据时间格式化的方法
Aug 24 Javascript
jQuery实现数字自动增加或者减少的动画效果示例
Dec 11 jQuery
微信小程序组件传值图示过程详解
Jul 31 Javascript
Ajax请求超时与网络异常处理图文详解
May 23 Javascript
js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问
Sep 14 #Javascript
根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)
Sep 14 #Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
Sep 14 #Javascript
js带缩略图的图片轮播效果代码分享
Sep 14 #Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 #Javascript
JS+DIV+CSS实现的经典标签切换效果代码
Sep 14 #Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 #Javascript
You might like
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
php生成网页桌面快捷方式
2017/05/05 PHP
php 函数中静态变量使用的问题实例分析
2020/03/05 PHP
FormValid0.5版本发布,带ajax自定义验证例子
2007/08/17 Javascript
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
jQuery1.9+中删除了live以后的替代方法
2016/06/17 Javascript
js输出数据精确到小数点后n位代码
2016/07/02 Javascript
jquery表单验证实例仿Toast提示效果
2017/03/03 Javascript
详解webpack+gulp实现自动构建部署
2017/06/29 Javascript
浅谈react前后端同构渲染
2017/09/20 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
vue组件文档(.md)中如何自动导入示例(.vue)详解
2019/01/25 Javascript
JavaScript获取页面元素的常用方法详解
2019/09/28 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
微信小程序的引导页实现代码
2020/06/24 Javascript
vue-amap根据地址回显地图并mark的操作
2020/11/03 Javascript
[02:57]2014DOTA2国际邀请赛 选手辛苦解说更辛苦
2014/07/10 DOTA
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
Python删除指定目录下过期文件的2个脚本分享
2014/04/10 Python
Python模块包中__init__.py文件功能分析
2016/06/14 Python
利用TensorFlow训练简单的二分类神经网络模型的方法
2018/03/05 Python
解决python3读取Python2存储的pickle文件问题
2018/10/25 Python
python点击鼠标获取坐标(Graphics)
2019/08/10 Python
Python K最近邻从原理到实现的方法
2019/08/15 Python
Python3操作YAML文件格式方法解析
2020/04/10 Python
后勤副校长自我鉴定
2013/10/13 职场文书
英语商务邀请函范文
2014/01/16 职场文书
法人授权委托书样本
2014/09/19 职场文书
群众路线专项整治工作情况报告
2014/10/28 职场文书
罗马假日观后感
2015/06/08 职场文书
学历证明范文
2015/06/16 职场文书
2016年幼儿园庆六一开幕词
2016/03/04 职场文书
Python批量将csv文件转化成xml文件的实例
2021/05/10 Python
Python内置的数据类型及使用方法
2022/04/13 Python