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 相关文章推荐
AJAX的跨域与JSONP(为文章自动添加短址的功能)
Jan 17 Javascript
jquery判断checkbox(复选框)是否被选中的代码
Oct 20 Javascript
javaScript 利用闭包模拟对象的私有属性
Dec 29 Javascript
DOM 中的事件处理介绍
Jan 18 Javascript
22点关于jquery性能优化的建议
May 28 Javascript
基于iframe实现类似于ajax的页面无刷新
May 31 Javascript
json属性名为什么要双引号(个人猜测)
Jul 31 Javascript
三种取消选中单选框radio的方法
Sep 09 Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
Jan 10 Javascript
JavaScript中的编码和解码函数
Feb 15 Javascript
node+express+ejs使用模版引擎做的一个示例demo
Sep 18 Javascript
vue前端框架—Mint UI详解(更适用于移动端)
Apr 30 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
phpmail类发送邮件函数代码
2012/02/20 PHP
PHP 代码规范小结
2012/03/08 PHP
浅析memcache启动以及telnet命令详解
2013/06/28 PHP
PHP批量检测并去除文件BOM头代码实例
2014/05/08 PHP
Linux平台php命令行程序处理管道数据的方法
2016/11/10 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
laravel自定义分页效果
2017/07/23 PHP
Laravel框架实现文件上传的方法分析
2019/09/29 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
js利用数组length属性清空和截短数组的小例子
2014/01/15 Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
2014/06/20 Javascript
Nodejs+express+html5 实现拖拽上传
2014/08/08 NodeJs
常用DOM整理
2015/06/16 Javascript
详解如何用webpack打包一个网站应用项目
2017/07/12 Javascript
详解React 在服务端渲染的实现
2017/11/16 Javascript
vue将单页面改造成多页面应用的方法
2018/11/25 Javascript
微信小程序五子棋游戏AI实现方法【附demo源码下载】
2019/02/20 Javascript
解决前后端分离 vue+springboot 跨域 session+cookie失效问题
2019/05/13 Javascript
微信小程序sessionid不一致问题解决
2019/08/30 Javascript
使用py2exe在Windows下将Python程序转为exe文件
2016/03/04 Python
Python 搭建Web站点之Web服务器网关接口
2016/11/06 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
Python3 mmap内存映射文件示例解析
2020/03/23 Python
python 爬虫如何实现百度翻译
2020/11/16 Python
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
HTML5新增加的功能详解
2016/09/05 HTML / CSS
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
美国用餐电影院:Alamo Drafthouse Cinema
2020/01/23 全球购物
构造方法和其他方法的区别?怎么调用父类的构造方法
2013/09/22 面试题
自我鉴定范文200字
2013/10/02 职场文书
学习计划书怎么写
2014/09/15 职场文书
党员国庆节演讲稿范文2014
2014/09/21 职场文书
2015年青年志愿者协会工作总结
2015/04/27 职场文书
女方家长婚礼致辞
2015/07/27 职场文书
python使用pywinauto驱动微信客户端实现公众号爬虫
2021/05/19 Python
nginx共享内存的机制详解
2022/03/21 Servers