Tab标签页(面试常考)分别用原生js和jquery实现
2017-04-13 23:00
726 查看
原生js
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>tab标签页</title>
<style>
*{margin: 0;padding: 0;}
#intro ul li
{
list-style: none;
float: left;
margin-right: 4px;
font-size: 15px;
}
#box
{
height: 200px;
width: 220px;
margin: 20px auto;
border: 1px solid black;
}
#intro
{
height: 24px;
width: 170px;
margin: 10px auto;
}
#content
{
height: 120px;
width: 170px;
margin: 5px auto;
border: 1px solid black;
}
#content div
{
display: none;
}
#intro ul li
{
height: 20px;
width: 50px;
cursor: pointer;
border: 1px solid black;
text-align: center;
}
#intro ul li.current
{
background: greenyellow;
}
</style>
</head>
<body>
<div id="box">
<div id="intro">
<ul id="ul">
<li class="current">php</li>
<li>ruby</li>
<li>python</li>
</ul>
</div>
<div id="content">
<div style="display: block;">介绍.....php</div>
<div>介绍.....ruby</div>
<div>介绍.....python</div>
</div>
</div>
<script>
var oDiv1=document.getElementById('intro');
var aLi=oDiv1.getElementsByTagName('li');
var oDiv2=document.getElementById('content');
var aDiv=oDiv2.getElementsByTagName('div');
for(var i=0;i<aLi.length;i++)
{
aLi[i].index=i;
aLi[i].onmouseover=function()
{
for(var i=0;i<aDiv.length;i++)
{
aLi[i].className='';
aDiv[i].style.display='none';
}
this.className='current';
aDiv[this.index].style.display='block';
}
}
</script>
</body>
</html>
jQuery部分代码,替换上面的js部分
$('#intro ul li').mouseover(function(){
$(this).addClass('current').siblings().removeClass('current').parent().parent().next().find('div').eq($(this).index()).show().siblings().hide();
});
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>tab标签页</title>
<style>
*{margin: 0;padding: 0;}
#intro ul li
{
list-style: none;
float: left;
margin-right: 4px;
font-size: 15px;
}
#box
{
height: 200px;
width: 220px;
margin: 20px auto;
border: 1px solid black;
}
#intro
{
height: 24px;
width: 170px;
margin: 10px auto;
}
#content
{
height: 120px;
width: 170px;
margin: 5px auto;
border: 1px solid black;
}
#content div
{
display: none;
}
#intro ul li
{
height: 20px;
width: 50px;
cursor: pointer;
border: 1px solid black;
text-align: center;
}
#intro ul li.current
{
background: greenyellow;
}
</style>
</head>
<body>
<div id="box">
<div id="intro">
<ul id="ul">
<li class="current">php</li>
<li>ruby</li>
<li>python</li>
</ul>
</div>
<div id="content">
<div style="display: block;">介绍.....php</div>
<div>介绍.....ruby</div>
<div>介绍.....python</div>
</div>
</div>
<script>
var oDiv1=document.getElementById('intro');
var aLi=oDiv1.getElementsByTagName('li');
var oDiv2=document.getElementById('content');
var aDiv=oDiv2.getElementsByTagName('div');
for(var i=0;i<aLi.length;i++)
{
aLi[i].index=i;
aLi[i].onmouseover=function()
{
for(var i=0;i<aDiv.length;i++)
{
aLi[i].className='';
aDiv[i].style.display='none';
}
this.className='current';
aDiv[this.index].style.display='block';
}
}
</script>
</body>
</html>
jQuery部分代码,替换上面的js部分
$('#intro ul li').mouseover(function(){
$(this).addClass('current').siblings().removeClass('current').parent().parent().next().find('div').eq($(this).index()).show().siblings().hide();
});
相关文章推荐
- js与jquery分别实现tab标签页功能的方法
- 标签页(tab)切换的原生js,jquery和bootstrap实现
- 网页中tab标签切换分别用jquery和javascript源码实现
- js和jquery分别实现tab标签页
- 原生js与jQuery实现简单的tab切换特效对比
- 原生js和jquery分别实现伸缩菜单的制作-水平方向导航栏
- 原生js和jquery分别实现横向导航菜单效果
- 原生js与jQuery实现简单的tab切换特效对比
- jQuery实现随意改变div任意属性的名称和值(部分原生js实现)
- JS实现Tab标签(选项卡)切换效果
- 转:jquery实现tab切换效果及js css ajax推荐
- JS加jquery实现标签元素的显示或隐藏
- JS原生方法实现jQuery的ready()
- 基于jquery的9行js轻松实现tab控件示例
- JS加jquery简单实现标签元素的显示或隐藏
- 习惯了使用jQuery的ajax方法,看看原生js使用xmlhttpRequest实现ajax请求
- 原生js实现jquery的getJSON方法
- JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参(selected的值和页面其它元素的值)以及js的select
- jquery/js 实现 标签 条码 一维码 Web页面 区域打印解决方案 实例
- 基于jquery的9行js轻松实现tab控件示例