快捷搜索:  汽车  科技

js怎么实现tab切换效果(js面向对象带实例)

js怎么实现tab切换效果(js面向对象带实例)<li>天命风流</li> <li>薛涛笺</li><div id="div1"> <ul id="ul_l" class="clearfix "> <li class="tab-active">凉凉</li>

js的面向对象可能真的很恶心 满屏幕的this 指来指去 可能最后自己都晕了 今天给大家带来的是一个基于js的面向对象选项卡 下面先看下 最后做完的样子

js怎么实现tab切换效果(js面向对象带实例)(1)

对于用一般的方法大家可能都很熟悉了,两个for循环就出来了

面向对象代码确实多了很多

下面先看html结构

<div id="div1">

<ul id="ul_l" class="clearfix ">

<li class="tab-active">凉凉</li>

<li>薛涛笺</li>

<li>天命风流</li>

<li>认真的老去</li>

</ul>

<div id="div">

下面贴下全部代码

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<link href="https://cdn.bootcss.com/minireset.css/0.0.2/minireset.min.css" rel="stylesheet">

<style>

.clearfix:before .clearfix:after{content: " ";display: table;}

.clearfix:after{clear: both;}

*{margin: 0;padding: 0}

body{background: #ccc;}

ul li{list-style: none;}

#div1{max-width: 960px;border: 1px solid #e5e5e5;margin: 30px auto;background: #fff;}

#ul_l{height: 34px;border-bottom: 1px solid #e5e5e5;color: #666;background: #f8f8f8}

#ul_l .tab-active{color: #00be3c;border-top: 2px solid #00be3c;background: #fff}

#ul_l li{float: left;;font: 14px/34px "Microsoft Yahei";height: 34px;

text-align: center;border-right: 1px solid #e5e5e5;width:calc(100%/4 - 6px);cursor:pointer}

#div{height: 300px;overflow-y: scroll;text-align: center}

#div div{display: none;position: relative;}

#div1 span{position: absolute;}

#div h3{font: 16px/3px "Microsoft Yahei";margin-top: 10px;padding: 15px 0;}

#div p{font-size: 14px;line-height: 20px;text-indent: 2em;margin-bottom: 10px;}

#div span{bottom: -41px;left: 50%;margin-left: -150px;}

</style>

</head>

<body>

<div id="div1">

<ul id="ul_l" class="clearfix ">

<li>凉凉</li>

<li>薛涛笺</li>

<li>天命风流</li>

<li>认真的老去</li>

</ul>

<div id="div">

<div style="display: block">

<h3></h3>

<p>杨宗纬、张碧晨 - 凉凉</p>

<p>作词:刘畅</p>

<p>作曲:谭旋</p>

<p>编曲:韦国赟</p>

<p>入夜渐微凉 繁花落地成霜</p>

<p>你在远方眺望 耗尽所有暮光</p>

<p>不思量 自难相忘</p>

<p>夭夭桃花凉 前世你怎舍下</p>

<p>这一海心茫茫 还故作不痛不痒不牵强</p>

<p>都是假象</p>

<p>凉凉夜色 为你思念成河</p>

<p>化作春泥 呵护着我</p>

<p>浅浅岁月 拂满爱人袖</p>

<p>片片芳菲 入水流</p>

<p>凉凉天意 潋滟一身花色</p>

<p>落入凡尘 伤情着我</p>

<p>生劫易渡 情劫难了</p>

<p>折旧的心 还有几分前生的恨</p>

<p>还有几分前生的恨</p>

<p>也曾鬓微霜 也曾因你回光</p>

<p>悠悠岁月漫长 怎能浪费时光</p>

<p>去流浪(去流浪)去换成长</p>

<p>灼灼桃花凉 今生愈渐滚烫</p>

<p>一朵已放心上 足够三生三世背影成双(背影成双)</p>

<p>在水一方</p>

<p>凉凉夜色 为你思念成河</p>

<p>化作春泥 呵护着我</p>

<p>浅浅岁月 拂满爱人袖</p>

<p>片片芳菲 入水流</p>

<p>凉凉天意 潋滟一身花色</p>

<p>落入凡尘 伤情着我</p>

<p>生劫易渡 情劫难了</p>

<p>折旧的心 还有几分前生的恨</p>

<p>凉凉三生三世 恍然如梦</p>

<p>须臾的年 风干泪痕</p>

<p>若是回忆不能再相认</p>

<p>就让情分 落九尘</p>

<p>凉凉十里 何时还会春盛</p>

<p>又见树下 一盏风存</p>

<p>落花有意 流水无情</p>

<p>别让恩怨爱恨 凉透那花的纯</p>

<p>吾生愿 牵尘</p>

<span >

<audio id="audio1" controls="controls">

<source src="https://img.aigexing.commusic/liang.mp3" type="audio/ogg" />

<source src="https://img.aigexing.commusic/liang.mp3" type="audio/mpeg" />

<track kind="subtitles" src="https://img.aigexing.commusic/subs_chi.srt" srclang="zh" label="Chinese">

<track kind="subtitles" src="https://img.aigexing.commusic/subs_chi.srt" srclang="en" label="English">

</audio>

<a onclick="playPause()">暂停/播放</a>

</span>

</div>

<div>

<h3>薛涛笺</h3>

<p>演唱:Tacke竹桑 诗雪</p>

<p>作曲\混音\和声:Tacke竹桑 作词:风定初</p>

<p>编曲:又又</p>

<p>二胡:EZ-Ven</p>

<p>【竹】揉碎那季桃花</p>

<p>融入素白书笺</p>

<p>这一脉心香萦绕千年</p>

<p>红烛摇残更漏</p>

<p>拨动锦瑟无端</p>

<p>任一曲轻韵弹奏无眠</p>

<p>【雪】轻束旧时锦衣</p>

<p>妆成昨日容颜</p>

<p>你和谁走过这场盛宴</p>

<p>亦颦亦笑眉眼</p>

<p>一生一次缠绵</p>

<p>你和谁完成这场沦陷</p>

<p>【竹】看着你把那桃花揉成薛涛笺 胭脂的颜色是相思的婉转</p>

<p>【雪】看着你把那梧桐写进乌丝阑 水墨的痕迹是心事的回环</p>

<p>【竹】月光酿成陈酒</p>

<p>洒满手中杯盏</p>

<p>一声叹息只是当时惘然</p>

<p>【雪】彩笔题尽断肠</p>

<p>浣花词里新篇</p>

<p>一滴泪遗在烟火人间</p>

<p>【雪】看着你把那桃花揉成薛涛笺 胭脂的颜色是相思的婉转</p>

<p>【竹】看着你把那梧桐写进乌丝阑 水墨的痕迹是心事的回环</p>

<p>【雪】月光酿成陈酒</p>

<p>洒满手中杯盏</p>

<p>一声叹息只是当时惘然</p>

<p>【竹】彩笔题尽断肠</p>

<p>浣花词里新篇</p>

<p>【合】一滴泪遗在烟火人间</p>

<p>【合】一天绛河清浅</p>

<p>一轮皓月婵娟</p>

<p>一瞬岁月迁延</p>

<p>一霎微雨空轩</p>

<p>旧游如梦,挽不住从前 你的身影,淡在烟水间</p>

<p>【合】千年后我对长夜为你倾杯盏 月光的陈酿浸透小庭院 千年后我执紫毫为你写留恋 桃花的气息落在了薛涛笺</p>

<p>【雪】犹记夕阳下驻马回望一眼</p>

<p>【竹】千年的岁月犹为谁独自闲</p>

</div>

<div>

<h3>天命风流</h3>

<p>曲:千草仙 词/文案:檀烧</p>

<p>天公爵微倾 洒下一壶酒</p>

<p>化人间多少 天命风流</p>

<p>灵秀上眉头 浩气存胸口</p>

<p>七分癫更有三分温柔</p>

<p>真与假 皆为所求</p>

<p>名与利 拿来奉酒</p>

<p>声与色 不过皮毛骨肉</p>

<p>人世多愁 自在几人能够</p>

<p>独倚高楼 总有人高歌相候</p>

<p>狂性难收 我自定我去留</p>

<p>笑他不懂 贪嗔痴不需看透</p>

<p>喧喧复嚣嚣 停停又走走</p>

<p>清风化多少 天命风流</p>

<p>烦扰总难逃 踏过不回首</p>

<p>万千种风光自在心头</p>

<p>谁又能 一生无垢</p>

<p>苦与乐 正是时候</p>

<p>且放手 看他阴谋阳谋</p>

<p>纷争不休 胜负自有缘由</p>

<p>昨夜冤仇 大笑在梦醒之后</p>

<p>志趣相投 三杯两盏淡酒</p>

<p>知己我有 风浪中与他相守</p>

<p>人世多愁 自在几人能够</p>

<p>独倚高楼 总有人高歌相候</p>

<p>狂性难收 我自定我去留</p>

<p>笑他不懂 贪嗔痴不需看透</p>

</div>

<div>

<h3>认真的老去</h3>

<p>认真的老去</p>

<p>作词:张希 曹方</p>

<p>作曲:张希</p>

<p>演唱:张希 曹方</p>

<p>忘了什么时候开始</p>

<p>到清晨才能入睡</p>

<p>也忘了什么叫做结尾</p>

<p>又有谁在乎呢</p>

<p>凌晨三点的窗前</p>

<p>播放着那段时光</p>

<p>有一个骄傲的少年</p>

<p>隐藏他的青春</p>

<p>嗯……</p>

<p>不如让我忘了自己</p>

<p>你觉得怎么样呢</p>

<p>在每个向往的地方</p>

<p>释然一个遗憾</p>

<p>躺在我怀里的吉他</p>

<p>好像厌倦了我</p>

<p>重复最熟悉的段落</p>

<p>好像无话可说</p>

<p>这生命正值春光</p>

<p>别装作刀枪不入的模样</p>

<p>别错过年轻的疯狂</p>

<p>时光很匆忙</p>

<p>别错过日落和夕阳</p>

<p>不论在哪里呀</p>

<p>来不及认真的年轻过</p>

<p>就认真的老去</p>

<p>又一次和你擦肩而过</p>

<p>一毫米的距离</p>

<p>请你(让我)再次抱起吉他</p>

<p>为你唱那一首歌</p>

<p>重复最熟悉的段落</p>

<p>就当明天不在</p>

<p>没有永远的年轻</p>

<p>没有唱不完的歌</p>

<p>当所有人都离去</p>

<p>我也将要离去</p>

<p>这生命正值春光</p>

<p>别装作刀枪不入的模样</p>

<p>别错过年轻的疯狂</p>

<p>时光很匆忙</p>

<p>别错过日落和夕阳</p>

<p>不论在哪里呀</p>

<p>来不及认真的年轻过</p>

<p>就认真的老去</p>

<p>又一次和你擦肩而过</p>

<p>一毫米的距离</p>

<p>别错过年轻的疯狂</p>

<p>时光很匆忙</p>

<p>别错过日落和夕阳</p>

<p>不论在哪里呀</p>

<p>来不及认真的年轻过</p>

<p>就认真的老去</p>

<p>又一次和你无话不说</p>

<p>开始对话以前</p>

</div>

</div>

</div>

<script>

window.onload= function () {

var Box=document.getElementById('div1')

var div=new Tab(Box);

}

function Tab(obj){

var _this=this;

this.Tab_ul=obj.getElementsByTagName('ul')[0];

this.Tab_ul_li=this.Tab_ul.getElementsByTagName('li');

this.Tab_div=obj.getElementsByTagName('div')[0];

this.Tab_div_div=this.Tab_div.getElementsByTagName('div');

for(var i=0;i<this.Tab_ul_li.length;i ){

this.Tab_ul_li[i].index=i;

this.Tab_ul_li[i].onclick= function () {

_this.TabBox(this);

}

}

}

Tab.prototype.TabBox= function (Tab_div_div) {

for(var i=0;i<this.Tab_ul_li.length;i ){

this.Tab_ul_li[i].className="";

this.Tab_div_div[i].style.display="none";

}

Tab_div_div.className="tab-active";

this.Tab_div_div[Tab_div_div.index].style.display="block";

}

var myAudio = document.getElementById('audio1');

function playPause(){

if(myAudio.paused){

myAudio.play();

}else{

myAudio.pause();

}

}

</script>

</body>

</html>

猜您喜欢: