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 相关文章推荐
按给定几率进行随机抽取的js代码
Dec 28 Javascript
jQuery 插件仿百度搜索框智能提示(带Value值)
Jan 22 Javascript
动态创建script标签实现跨域资源访问的方法介绍
Feb 28 Javascript
jQuery $命名冲突解决方案汇总
Nov 13 Javascript
jQuery()方法的第二个参数详解
Apr 29 Javascript
jQuery中closest和parents的区别分析
May 07 Javascript
js+css绘制颜色动态变化的圈中圈效果
Jan 27 Javascript
javascript中call apply 与 bind方法详解
Mar 10 Javascript
微信小程序上传图片到服务器实例代码
Nov 07 Javascript
浅谈Node框架接入ELK实践总结
Feb 22 Javascript
小程序实现横向滑动日历效果
Oct 21 Javascript
Vue项目打包部署到apache服务器的方法步骤
Feb 01 Vue.js
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
用ODBC的分页显示
2006/10/09 PHP
php简单截取字符串代码示例
2016/10/19 PHP
PHP实现的登录,注册及密码修改功能分析
2016/11/25 PHP
简略的前端架构心得&amp;&amp;基于editor为例子的编码小技巧
2010/11/25 Javascript
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
jquery的index方法实现tab效果
2011/02/16 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
使用JavaScript和C#中获得referer
2014/11/14 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
Node.js事件驱动
2015/06/18 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
BootStrap table使用方法分析
2016/11/08 Javascript
微信小程序实现添加手机联系人功能示例
2017/11/30 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
Vue自定义指令写法与个人理解
2019/02/09 Javascript
vue项目强制清除页面缓存的例子
2019/11/06 Javascript
Python获取电脑硬件信息及状态的实现方法
2014/08/29 Python
关于Python面向对象编程的知识点总结
2017/02/14 Python
Django查询数据库的性能优化示例代码
2017/09/24 Python
python机器学习实战之K均值聚类
2017/12/20 Python
python两个_多个字典合并相加的实例代码
2019/12/26 Python
浅谈tensorflow 中的图片读取和裁剪方式
2020/06/30 Python
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
HTML5 canvas实现移动端上传头像拖拽裁剪效果
2016/03/14 HTML / CSS
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
联想西班牙官网:Lenovo西班牙
2018/08/28 全球购物
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
《尊严》教学反思
2014/02/11 职场文书
人民教师求职自荐信
2014/03/12 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
事业单位工作人员年度考核个人总结
2015/02/12 职场文书
2015最新学生自我评价范文
2015/03/03 职场文书
大学生创业计划书常用模板
2019/08/07 职场文书
浅谈MySQL user权限表
2021/06/18 MySQL