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仿php的print_r函数输出json数据
Sep 13 Javascript
关闭页面window.location事件未执行的原因及解决方法
Sep 01 Javascript
js函数内变量的作用域分析
Jan 12 Javascript
基于jQuery实现的仿百度首页滑动选项卡效果代码
Nov 16 Javascript
jQuery实现批量判断表单中文本框非空的方法(2种方法)
Dec 09 Javascript
javascript实现在网页中运行本地程序的方法
Feb 03 Javascript
Backbone.js框架中Model与Collection的使用实例
May 07 Javascript
利用bootstrapValidator验证UEditor
Sep 14 Javascript
JS 循环li添加点击事件 (闭包的应用)
Dec 10 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
Jan 17 Javascript
ionic2 tabs 图标自定义实例
Mar 08 Javascript
微信小程序制作表格的方法
Feb 14 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
ThinkPHP实现事务回滚示例代码
2014/06/23 PHP
PHP程序员不应该忽略的3点
2015/10/09 PHP
PHP汉字转换拼音的函数代码
2015/12/30 PHP
在laravel中使用Symfony的Crawler组件分析HTML
2017/06/19 PHP
jQuery总体架构的理解分析
2011/03/07 Javascript
node.js中的fs.readSync方法使用说明
2014/12/17 Javascript
JavaScript 基本概念
2015/01/20 Javascript
JS传值出现中文参数乱码的解决方法
2016/06/30 Javascript
bootstrap fileinput插件实现预览上传照片功能
2018/01/23 Javascript
webpack4 升级迁移的实现
2018/09/12 Javascript
详解vue 动态加载并注册组件且通过 render动态创建该组件
2019/05/30 Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
2019/08/27 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
2019/10/15 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
[05:13]TI4 中国战队 机场出征!!
2014/07/07 DOTA
[54:53]完美世界DOTA2联赛PWL S2 GXR vs PXG 第二场 11.18
2020/11/18 DOTA
PYTHON正则表达式 re模块使用说明
2011/05/19 Python
Python version 2.7 required, which was not found in the registry
2014/08/26 Python
TensorFlow实现卷积神经网络CNN
2018/03/09 Python
Django自定义过滤器定义与用法示例
2018/03/22 Python
python实现网页自动签到功能
2019/01/21 Python
Python中py文件转换成exe可执行文件的方法
2019/06/14 Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
2019/06/25 Python
django 类视图的使用方法详解
2019/07/24 Python
pandas 对日期类型数据的处理方法详解
2019/08/08 Python
python中bytes和str类型的区别
2019/10/21 Python
如何基于Python按行合并两个txt
2020/11/03 Python
美国著名手表网站:Timepiece
2017/11/15 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
英国顶尖手表珠宝品牌独家授权经销商:HS Johnson
2020/10/28 全球购物
中专毕业生自我鉴定
2013/11/21 职场文书
2014年情人节活动方案
2014/02/16 职场文书
大学生社会实践自我鉴定
2014/03/24 职场文书
禁止酒驾标语
2014/06/25 职场文书
大学生入党积极分子自我评价
2014/09/20 职场文书
浅谈Nginx 中的两种限流方式
2021/03/31 Servers