js和jquery实现tab选项卡
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8"> <meta name="Generator" content="EditPlus®">
<meta name="Author" content="Create by double 2015-07-09"> <title>jquery实现tab</title>
<script src="jquery-1.7.2.js"></script>
<style>
*{
padding:0;
margin:0;
}
ul{
list-style-type:none;
}
#ul{
height:30px;
margin-bottom:10px;
}
body{
margin:50px;
}
#ul li{
height:30pxx;
line-height:30px;
padding:0 15px;
border:1px solid #abcdef;
float:left;
margin-right:3px;
cursor:pointer;
}
#ul li.current{
background:#abcdef;
}
#content div{
width:300px;
height:200px;
border:1px solid #abcdef;
display:none; }
#content div.show{
display:block;
}
</style>
</head>
<body>
<ul id="ul">
<li class="current">php</li>
<li>java</li>
<li>js</li>
</ul>
<div id="content">
<div class="show">php...介绍</div>
<div>java...介绍</div>
<div >js...介绍</div>
</div>
<script>
//未使用事件委托
var ul = document.getElementById('ul');
var li = ul.getElementsByTagName('li');
var content = document.getElementById('content');
var div = content.getElementsByTagName('div');
for(var i=0;i<li.length;i++){
li[i].index = i;
li[i].onclick=function(){
for(var i=0;i<li.length;i++){
li[i].className = ' ';
div[i].style.display='none';
};
this.className='current';
div[this.index].style.display='block';
}
} //采用事件委托处理
var oul = document.getElementById('ul');
var ali = ul.getElementsByTagName('li');
var content = document.getElementById('content');
var div = content.getElementsByTagName('div'); //ali[i].index = i;
oul.onclick = function(ev) { var ev = ev || window.event;
var target = ev.target || ev.srcElement; if(target.nodeName.toLowerCase() == "li"){ for(var i=0, len=ali.length; i<len; i++){ if(ali[i] == target){
//alert(ali[i]);
ali[i].className = "current";
div[i].style.display = "block";
}
else{ ali[i].className = "";
div[i].style.display = "none";
}
}
}
}
//jquery实现更方便
$('#ul li').click(function(){
//点击li的时候要切换样式
$(this).addClass('current').siblings().removeClass('current');
//根据li的索引值,确定div的显示,其他隐藏
$('#content>div').eq($(this).index()).show().siblings().hide();
});
//jquery实现更方便
$('#ul li').click(function(){
//点击li的时候要切换样式
$(this).addClass('current').siblings().removeClass('current').parent().next().find('div').eq($(this).index()).show().siblings().hide();
});
</script>
</body>
</html>
js和jquery实现tab选项卡的更多相关文章
- 使用jQuery开发tab选项卡插件
为了复习巩固jQuery的插件开发.HTML和CSS方面的知识,做了一个简单的tab选项卡插件,简单记录一下开发.使用的过程,以备日后使用. 一.插件效果 tab选项卡插件常用的功能均已实现,包括:动 ...
- jQuery实现TAB选项卡切换特效简单演示
本文实例为大家分享jQuery实现TAB选项卡切换特效,供大家参考,具体内容如下 1.tab切换 on ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...
- 使用jQuery开发tab选项卡插件(可以右键关闭多个标签)
在前一篇“使用jQuery开发tab选项卡插件”的基础上添加了tab标签右键关闭菜单功能,菜单主要包括:关闭当前标签.关闭左侧标签.关闭右侧标签.关闭其他.关闭全部. 一.插件效果 二.实现思路 为w ...
- DOM操作相关案例 模态对话框,简易留言板,js模拟选择器hover,tab选项卡,购物车案例
1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...
- jQuery实现tab选项卡效果小demo
html页面: <section> <h2>Section Title</h2> <ul class="tab-nav"> < ...
- js 淡入淡出的tab选项卡
代码如下 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF- ...
- jquery实现Tab选项卡菜单
效果图: 默认选中 科技 当鼠标悬停在 ...
- tab选项卡-jQuery
上次用原生的js写了个tab选项卡 这次按照一样的思路用jQuery写了一个 ,直接看代码: /*布局*/ <div id="div1"> <input cl ...
- [js高手之路]jquery插件开发实战-选项卡详解
在jquery中,插件开发常见的有: 一种是为$函数本身扩展一个方法,这种是静态扩展(也叫类扩展),这种插件一般是工具方法, 还有一种是扩展在原型对象$.fn上面的,开发出来的插件是用在dom元素上面 ...
随机推荐
- Xcode使用版本
Xcode6中创建分类.协议等文件的方法 Xcode 5.1.1 与 Xcode 6.0.1 的共存之路 http://jingyan.baidu.com/article/1612d500457df1 ...
- Linux同步机制(一) - 线程锁
1 互斥锁 在线程实际运行过程中,我们经常需要多个线程保持同步. 这时可以用互斥锁来完成任务.互斥锁的使用过程中,主要有 pthread_mutex_init pthread_mutex_destor ...
- UIDevice通知
UIDevice通知 UIDevice类提供了一个单例对象,它代表着设备,通过它可以获得一些设备相关的信息,比如电池电量值(batteryLevel).电池状态(batteryState).设备的类型 ...
- BZOJ 2429 聪明的猴子
kruskal. #include<iostream> #include<cstdio> #include<cstring> #include<algorit ...
- [转]Git介绍
Git是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体验到原来一个版 本控制工具可以对开发产生如此之多的影响,文章分为两部分, ...
- 约束优化方法之拉格朗日乘子法与KKT条件
引言 本篇文章将详解带有约束条件的最优化问题,约束条件分为等式约束与不等式约束,对于等式约束的优化问题,可以直接应用拉格朗日乘子法去求取最优值:对于含有不等式约束的优化问题,可以转化为在满足 KKT ...
- marginCollapse之兄弟关系的DIV
废话不说,直接上图 基本代码如下: 效果图如下: 给两个div分别加marginBottom和marginTop看一下效果 实际效果如下: 我们可以看出两个div之间的距离并不是50+50,而是只显示 ...
- 2015-10-14 晴 tcp/ip
今天看完ping, traceroute, ip选路,动态选路协议,dup, igmp, tftp, bootp,tcp
- js判断是否是pc
//判断是否是pc function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("An ...
- 备忘录 - numpy基本方法总结
一.数组方法 创建数组:arange()创建一维数组:array()创建一维或多维数组,其参数是类似于数组的对象,如列表等 反过来转换则可以使用numpy.ndarray.tolist()函数,如a. ...