js實(shí)現(xiàn)帶三角符的手風(fēng)琴效果
效果圖:

圖(1)初始圖

圖(2)點(diǎn)擊展開圖
代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
*{
margin: 0;
padding: 0;
}
li{
list-style: none;
}
#list{
width: 240px;
border: 1px solid #666;
margin: 20px auto;
}
#list .lis{
}
#list h2{
height: 30px;
line-height: 30px;
overflow: hidden;
background: lightsalmon;
color: #f1f1f1;
}
#list h2.active{
background: pink;
height: 30px;
line-height: 30px;
overflow: hidden;
color: #666;
}
#list h2.active div{
display: inline-block;
width: 0;
height: 0;
border-left: 8px solid transparent;
border-top: 12px solid #666;
border-right:8px solid transparent;
border-bottom:2px solid transparent;
margin-right: 4px;
}
#list h2 div{
display: inline-block;
width: 0;
height: 0;
border-left: 12px solid #f1f1f1;
border-right: 6px solid transparent;
border-bottom: 9px solid transparent;
border-top:9px solid transparent;
/*margin-right: 3px;*/
}
#list .lis ul{
display: none;
}
#list .lis ul li{
line-height: 24px;
border-bottom: 1px solid #666;
text-indent: 15px;
}
#list .lis ul li.hover{
background: lightgreen;
color: #F8F8F8;
}
#list .lis ul li:first-of-type{
border-top: 1px solid #ccc;
}
#list .lis:last-of-type ul li:last-of-type{
border-bottom:none;
}
</style>
<script>
window.onload=function(){
var oUl=document.getElementById('list');
var aH2=oUl.getElementsByTagName('h2');
var aUl=oUl.getElementsByTagName('ul');
var h2Len=aH2.length;
var aLi=null;
var arrLi=[];
var aUlLen=aUl.length;
for(var i=0;i<h2Len;i++){
aH2[i].index=i;
aH2[i].onclick=function(){
if(this.className=='')
{
aUl[this.index].style.display='block';
this.className='active';
}
else{
aUl[this.index].style.display='none';
this.className='';
}
}
}
for(var i=0;i<aUlLen;i++){
aLi=aUl[i].getElementsByTagName('li');
for(var j=0;j<aLi.length;j++){
arrLi.push(aLi[j]);
}
}
for(var i=0;i<arrLi.length;i++){
arrLi[i].onclick=function(){
for(var i=0;i<arrLi.length;i++){
arrLi[i].className='';
}
this.className='hover';
}
}
}
</script>
</head>
<body>
<ul id="list">
<li class="lis">
<h2><div></div>大學(xué)同學(xué)</h2>
<ul>
<li>張三</li>
<li>張三</li>
<li>張三</li>
<li>張三</li>
</ul>
</li>
<li class="lis">
<h2><div></div>高中同學(xué)</h2>
<ul>
<li>李四</li>
<li>李四</li>
<li>李四</li>
<li>李四</li>
</ul>
</li>
<li class="lis">
<h2><div></div>初中同學(xué)</h2>
<ul>
<li>王五</li>
<li>王五</li>
<li>王五</li>
<li>王五</li>
</ul>
</li>
</ul>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- JS實(shí)現(xiàn)圖片手風(fēng)琴效果
- Agularjs妙用雙向數(shù)據(jù)綁定實(shí)現(xiàn)手風(fēng)琴效果
- JavaScript手風(fēng)琴頁(yè)面制作
- Vue.js手風(fēng)琴菜單組件開發(fā)實(shí)例
- js實(shí)現(xiàn)簡(jiǎn)單的手風(fēng)琴效果
- js以及jquery實(shí)現(xiàn)手風(fēng)琴效果
- 原生JS實(shí)現(xiàn)垂直手風(fēng)琴效果
- 原生js實(shí)現(xiàn)手風(fēng)琴功能(支持橫縱向調(diào)用)
- Html5 js實(shí)現(xiàn)手風(fēng)琴效果
- JS實(shí)現(xiàn)手風(fēng)琴特效
相關(guān)文章
JavaScript數(shù)值轉(zhuǎn)換的三種方式總結(jié)
JavaScript數(shù)值轉(zhuǎn)換一般有三種方式,Number(param)函數(shù)、parseInt(param)、parseIFloat(param),下面為大家詳細(xì)介紹,需要的朋友可以參考下2014-07-07
深入理解Javascript動(dòng)態(tài)方法調(diào)用與參數(shù)修改的問題
這篇文章主要是對(duì)Javascript動(dòng)態(tài)方法調(diào)用與參數(shù)修改的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來(lái)參考下,希望對(duì)大家有所幫助2013-12-12
JS中的算法與數(shù)據(jù)結(jié)構(gòu)之字典(Dictionary)實(shí)例詳解
這篇文章主要介紹了JS中的算法與數(shù)據(jù)結(jié)構(gòu)之字典(Dictionary),結(jié)合實(shí)例形式詳細(xì)分析了javascript數(shù)據(jù)結(jié)構(gòu)中字典的概念、原理、定義與常見使用方法,需要的朋友可以參考下2019-08-08
Nest.js快速啟動(dòng)API項(xiàng)目過程詳解
這篇文章主要為大家介紹了Nest.js快速啟動(dòng)API項(xiàng)目過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
BootStrap.css 在手機(jī)端滑動(dòng)時(shí)右側(cè)出現(xiàn)空白的原因及解決辦法
這篇文章主要介紹了BootStrap.css 在手機(jī)端滑動(dòng)時(shí)右側(cè)出現(xiàn)空白的原因及解決辦法的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06

