使用javascript实现简单的选项卡切换

时间:2021-05-25

代码相当简洁、简单易懂,就不多废话了。

直接奉上代码:

复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html" charset="utf-8">
<title>js简单选项卡</title>
<script type="text/javascript" src="js/demo.js"></script>

<style type="text/css">
*{ font-size: 14px;margin: 0px;}
    a{color:#a0b3d6;text-decoration: none;}
    .tabs{border:1px solid #a0b3d6;margin:100px;width:350px;}
    .tabs-nav a{background:#eaf0fd; line-height:30px;padding:0px 20px 0px 20px;display:inline-block;border-right:1px solid #a0b3d6;border-bottom:1px solid #a0b3d6; float:left;}
    .tabs-nav .on{background:white; border-bottom:1px solid white; position:relative;}
    .tabs-content{display: block; padding:20px;border-top:1px solid #a0b3d6; margin-top:-1px;}
    .tabs-content_hide{display: none;}
</style>

</head>
<body>
<div class="tabs" id="tabs">
<h2 class="tabs-nav clearfix">
<a href="javascript:;" class="on">首页</a>
<a href="javascript:;">技术</a>
<a href="javascript:;">生活</a>
<a href="javascript:;">作品</a>
</h2>
<div style="clear:both;"></div>
<p class="tabs-content">首页</p>
<p class="tabs-content_hide">技术</p>
<p class="tabs-content_hide">生活</p>
<p class="tabs-content_hide">作品</p>
</div>

</body>
<footer></footer>
</html>

------demo.js---------------

复制代码 代码如下:
window.onload=function(){
tabs("tabs","mouseover");
}
function tabs(id,trigger){
var tabBtn = document.getElementById(id).getElementsByTagName("h2")[0].getElementsByTagName("a");
var tabsContent = document.getElementById(id).getElementsByTagName("p");
for(var i=0;i<tabBtn.length;i++){
tabBtn[i].index = i;
if(trigger=='mouseover'){
tabBtn[i].onmouseover=function(){
clearClass();
this.className="on";
showContent(this.index);
}
}
function showContent(n){
for (var i=0; i<tabsContent.length ;i++) {
tabsContent[i].index = i;
tabsContent[i].className = "tabs-content_hide";
}
tabsContent[n].className="tabs-content";
}
function clearClass(){
for(var i=0;i<tabBtn.length;i++){
tabBtn[i].className="";
}
}
}
}

是不是很简单就实现了选项卡的切换效果呢,小伙伴们自己美化下就可以用到自己项目中去了。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章