js實現(xiàn)tab欄切換制作
本文實例為大家分享了js實現(xiàn)tab欄切換制作的具體代碼,供大家參考,具體內(nèi)容如下
效果:
思想:
1.點擊每個tab時。要先用排他思想,使得所有l(wèi)i不加上背景,再讓點擊的tab加上某個類。
2.上面的tab與下面顯示內(nèi)容的頁面是一一對應(yīng)的。因此,可以使用自定義屬性,使tab加上一個index索引,這樣就能知道每次點擊的是哪一個tab了。
3.最后仍然使用排他思想,當(dāng)點擊tab時,先讓所有的內(nèi)容都不顯示,再讓對應(yīng)的內(nèi)容進行顯示。
代碼:
<!DOCTYPE html> <html lang="en"> <head> ? ? <meta charset="UTF-8"> ? ? <meta http-equiv="X-UA-Compatible" content="IE=edge"> ? ? <meta name="viewport" content="width=device-width, initial-scale=1.0"> ? ? <title>tab切換欄的制作</title> ? ? <style> ? ? ? ? ? *{ ? ? ? ? ? ? padding: 0; ? ? ? ? ? ? margin: 0; ? ? ? ? } ? ? ? ? .head{ ? ? ? ? ? ? width: 1000px; ? ? ? ? ? ? height: 30px; ? ? ? ? ? ? background-color: pink; ? ? ? ? ? ? margin: 10px auto; ? ? ? ? ? ?? ? ? ? ? } ? ? ? ? ul{ ? ? ? ? ? ? width: 100%; ? ? ? ? ? ? height: 100%; ? ? ? ? } ? ? ? ? li { ? ? ? ? ? ? display: inline-block; ? ? ? ? ? ? width: 100px; ? ? ? ? ? ? height: 100%; ? ? ? ? ? ? list-style: none; ? ? ? ? ? ? line-height: 30px; ? ? ? ? ? ? text-align: center; ? ? ? ? ? ? cursor: pointer; ? ? ? ? } ? ? ? ? .bg { ? ? ? ? ? ? color: white; ? ? ? ? ? ? background-color: red; ? ? ? ? } ? ? ? ? .item { ? ? ? ? ? ? display: none; ? ? ? ? } ? ? </style> </head> <body> ? ? <div class="head"> ? ? ? ? <ul> ? ? ? ? ? ? <li>商品詳情</li> ? ? ? ? ? ? <li>商品詳情</li> ? ? ? ? ? ? <li>商品詳情</li> ? ? ? ? ? ? <li>商品詳情</li> ? ? ? ? ? ? <li>商品詳情5</li> ? ? ? ? </ul> ? ? ? ? <div class="detail"> ? ? ? ? ? ? <div class="item">item1</div> ? ? ? ? ? ? <div class="item">item2</div> ? ? ? ? ? ? <div class="item">item3</div> ? ? ? ? ? ? <div class="item">item4</div> ? ? ? ? ? ? <div class="item">item5</div> ? ? ? ? </div> ? ? ? ? <script> ? ? ? ? ? ? var lis = document.querySelectorAll('li'); ? ? ? ? ? ? // 鼠標(biāo)經(jīng)過時,li加入className,同時讓其他li去掉該類。 ? ? ? ? ? ? // 綁定事件 ? ? ? ? ? ? var detail = document.querySelector('.detail'); ? ? ? ? ? ? var items = detail.querySelectorAll('.item'); ? ? ? ? ? ? for(var i=0;i<lis.length;i++){ ? ? ? ? ? ? ? ? lis[i].setAttribute('index',i); ? ? ? ? ? ? ? ? var index; ? ? ? ? ? ? ? ? lis[i].onclick = function(){ ? ? ? ? ? ? ? ? ? ? for(var j=0;j<lis.length;j++){ ? ? ? ? ? ? ? ? ? ? ? ? lis[j].className=''; ? ? ? ? ? ? ? ? ? ? ? ? items[j].style.display = 'none'; ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? this.className='bg'; ? ? ? ? ? ? ? ? ? ? index = this.getAttribute('index'); ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? items[index].style.display='block'; ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? } ? ? ? ? </script> ? ? </div> </body> </html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript 實現(xiàn)的多瀏覽器支持的貪吃蛇webgame
兼容FF IE的javascript版貪吃蛇游戲,非常厲害的高手。2008-01-01GreyBox技術(shù)總結(jié)(轉(zhuǎn))
GreyBox是一個遮罩層的組件也稱模式窗口或模態(tài)窗口(所謂模態(tài)窗口,就是指除非采取有效的關(guān)閉手段,用戶的鼠標(biāo)焦點或者輸入光標(biāo)將一直停留在其上的窗口),它運行以后可以產(chǎn)生不錯的界面。2010-11-11js文件中調(diào)用js的實現(xiàn)方法小結(jié)
JavaScript文件引用JavaScript文件的方法,需要的朋友可以參考下。2009-10-10