JS仿QQ好友列表展開(kāi)、收縮功能(第一篇)
效果圖如下所示:
html:
<ul id="list"> <li class="lis"> <h2>我的好友</h2> <ul> <li>張三</li> <li>李四</li> ... </ul> </li> <li class="lis"> <h2>企業(yè)好友</h2> <ul> <li>小明</li> <li>小紅</li> ... </ul> </li> <li class="lis"> <h2>黑名單</h2> <ul> <li>哈哈</li> ... </ul> </li> </ul>
css:
ul,h2 {padding: 0;margin: 0;} li {list-style: none;} #list { width: 240px; border: 1px solid #ccc; margin: 0 auto; } #list .lis { } #list h2 { height: 30px; line-height: 30px; text-indent: 20px;/*文字縮進(jìn)20px*/ background: url(img/ico1.gif) no-repeat 5px center pink;/*前面小箭頭*/ cursor: pointer; } #list .active { /* 點(diǎn)擊時(shí)添加的類名 */ background: url(img/ico2.gif) no-repeat 5px center #ff9; } #list ul {display: none;} #list ul li { line-height: 24px; border-bottom: 2px solid #fc4; text-indent: 24px;/*文字縮進(jìn)24px*/ }
js:
window.onload = function(){ var list = document.getElementById('list'); var ah2 = list.getElementsByTagName('h2'); var uls = list.getElementsByTagName('ul'); // h2要和下面的ul進(jìn)行匹配,所以我們要用索引值,給h2身上添加索引值 for(var i=0;i<ah2.length;i++){ ah2[i].index = i;//給h2添加索引值,點(diǎn)擊誰(shuí)就給誰(shuí)添加索引值 ah2[i].onclick = function(){ if(this.className == ''){//判斷所點(diǎn)擊的h2標(biāo)簽是否有類, //this.index指h2身上的索引數(shù),this指h2,h2的索引值為this.index uls[this.index].style.display = 'block'; this.className = 'active';//給當(dāng)前點(diǎn)擊的h2添加類,更改箭頭方向 }else{ uls[this.index].style.display = 'none'; this.className = ''; } } } }
下篇給大家介紹:JS仿QQ好友列表展開(kāi)、收縮功能(第二篇)
以上所述是小編給大家介紹的JS仿QQ好友列表展開(kāi)、收縮功能(第一篇),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- JS+CSS實(shí)現(xiàn)DIV層的展開(kāi)、收縮效果
- js實(shí)現(xiàn)div層緩慢收縮與展開(kāi)的方法
- vuejs實(shí)現(xiàn)折疊面板展開(kāi)收縮動(dòng)畫效果
- JS右下角廣告窗口代碼(可收縮、展開(kāi)及關(guān)閉)
- JavaScript設(shè)置FieldSet展開(kāi)與收縮
- JS實(shí)現(xiàn)固定在右下角可展開(kāi)收縮DIV層的方法
- 在iframe里的頁(yè)面編寫js,實(shí)現(xiàn)在父窗口上創(chuàng)建動(dòng)畫效果展開(kāi)和收縮的div(不變動(dòng)iframe父窗口代碼)
- JS仿QQ好友列表展開(kāi)、收縮功能(第二篇)
- Vue.JS實(shí)現(xiàn)垂直方向展開(kāi)、收縮不定高度模塊的JS組件
- JavaScript實(shí)現(xiàn)QQ列表展開(kāi)收縮擴(kuò)展功能
- javascript使用substring實(shí)現(xiàn)的展開(kāi)與收縮文字功能示例
相關(guān)文章
javascript js cookie的存儲(chǔ),獲取和刪除
2007-12-12詳解多頁(yè)應(yīng)用 Webpack4 配置優(yōu)化與踩坑記錄
這篇文章主要介紹了詳解多頁(yè)應(yīng)用 Webpack4 配置優(yōu)化與踩坑記錄,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10使用Javascript簡(jiǎn)單實(shí)現(xiàn)圖片無(wú)縫滾動(dòng)
本文簡(jiǎn)單介紹了使用原生javascript實(shí)現(xiàn)簡(jiǎn)單的圖片無(wú)縫滾動(dòng)的方法,并附上示例代碼,推薦給大家,直接可以用在項(xiàng)目中的。2014-12-12js實(shí)現(xiàn)浮動(dòng)在網(wǎng)頁(yè)右側(cè)的簡(jiǎn)潔QQ在線客服代碼
這篇文章主要介紹了js實(shí)現(xiàn)浮動(dòng)在網(wǎng)頁(yè)右側(cè)的簡(jiǎn)潔QQ在線客服代碼,通過(guò)簡(jiǎn)單的自定義函數(shù)控制客服圖片的顯示與隱藏效果,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-09-09JavaScript 中Date對(duì)象的格式化代碼方法匯總
JavaScript默認(rèn)的時(shí)間格式我們一般情況下不會(huì)用,所以需要進(jìn)行格式化,下面小編給大家?guī)?lái)了三種js date對(duì)象格式化實(shí)例代碼,需要的朋友參考下吧2017-09-09JavaScript的parseInt 進(jìn)制問(wèn)題
今天在整理以前寫過(guò)的一段根據(jù)周期值自動(dòng)計(jì)算下次執(zhí)行日期的js代碼,發(fā)現(xiàn)一bug,我使用parseInt對(duì)源數(shù)據(jù)串進(jìn)行轉(zhuǎn)換,當(dāng)輸入類似:2009-05-05時(shí),parseInt將把串的05做8進(jìn)制轉(zhuǎn)換,這樣結(jié)果自然就不對(duì)了。2009-05-05JavaScript常用標(biāo)簽和方法總結(jié)
JavaScript可以被瀏覽器直接解釋執(zhí)行,它可以更好得減小服務(wù)器壓力,提高程序運(yùn)行效率,下面小編通過(guò)本篇文章給大家分享JavaScript常用標(biāo)簽和方法,需要的朋友一起來(lái)學(xué)習(xí)吧2015-09-09