當(dāng)前位置:軟件學(xué)堂 > 資訊首頁 > 網(wǎng)絡(luò)編程 > 編程其他 > JS代碼實現(xiàn)網(wǎng)頁中的選項卡效果

JS代碼實現(xiàn)網(wǎng)頁中的選項卡效果

2012/11/2 16:06:05作者:佚名來源:網(wǎng)絡(luò)

移動端

【實例名稱】

JS代碼實現(xiàn)網(wǎng)頁中的選項卡效果

【實例描述】

選項卡是C/S(Client/Server)應(yīng)用程序中常見的控件,但網(wǎng)頁中并無此控件。本例學(xué)習(xí)使用JavaScript和CSS實現(xiàn)B/S(Browser/Server)應(yīng)用程序的選項卡。

【實例代碼】

<html xmlns="http://www.w3.org/1999/xhtml" > <head>     <title>標(biāo)題頁-學(xué)無憂(m.wangbatian.cn)</title> <style> .conts{visibility:hidden} .tab{border-top:solid thin #E0E0E0; border-right:solid thin gray; border-left:solid thin #E0E0E0; font-family:Verdana; font-size:10pt; text-align:center; font-weight:normal} .selTab{border-left:solid thin white; border-top:solid thin white; border-right:solid thin black; font-weight:bold; text-align:center} .conts  {visibility:hidden} .tab{border-top:solid thin #E0E0E0; border-right:solid thin gray; border-left:solid thin #E0E0E0; font-family:Verdana; font-size:10pt; text-align:center; font-weight:normal} .selTab{border-left:solid thin white; border-top:solid thin white; border-right:solid thin black; font-weight:bold; text-align:center} </style> <script language="JavaScript"> function public_Labels(label1, label2, label3, label4, label5, label6, label7){ t1.innerText = label1; t2.innerText = label2; t3.innerText = label3; t4.innerText = label4; t5.innerText = label5; t6.innerText = label6; t7.innerText = label7; } //切換選項卡時顯示選項卡的內(nèi)容 function public_Contents(contents1, contents2, contents3, contents4, contents5, contents6, contents7){ t1Contents.innerHTML = contents1; t2Contents.innerHTML = contents2; t3Contents.innerHTML = contents3; t4Contents.innerHTML = contents4; t5Contents.innerHTML = contents5; t6Contents.innerHTML = contents6; t7Contents.innerHTML = contents7; init(); } //默認顯示選項卡1 function init(){ tabContents.innerHTML = t1Contents.innerHTML; } //更換選項卡時的方法 var currentTab; var tabBase; var firstFlag = true; function changeTabs(){ if(firstFlag == true){ currentTab = t1; tabBase = t1base; firstFlag = false; } //當(dāng)用戶單擊選項卡時,修改樣式及內(nèi)容 if(window.event.srcElement.className == "tab") { currentTab.className = "tab"; tabBase.style.backgroundColor = "white"; currentTab = window.event.srcElement; tabBaseID = currentTab.id + "base"; tabContentID = currentTab.id + "Contents"; tabBase = document.all(tabBaseID); tabContent = document.all(tabContentID); currentTab.className = "selTab"; tabBase.style.backgroundColor = ""; tabContents.innerHTML = tabContent.innerHTML; }} </script> </head> <body BGCOLOR="#c0c0c0" onclick="changeTabs()" onload="init()"> <div STYLE="position:absolute; top:20; height:350; width:500; left:65; border:none thin gray"> <table STYLE="width:600; height:350" CELLPADDING="0" CELLSPACING="0" bgcolor="c0c0c0"> <tr><td ID="t1" CLASS="selTab" HEIGHT="25">選項 1</td> <td ID="t2" CLASS="tab">選項 2</td> <td ID="t3" CLASS="tab">選項 3</td> <td ID="t4" CLASS="tab">選項 4</td> <td ID="t5" CLASS="tab">選項 5</td> <td ID="t6" CLASS="tab">選項 6</td> <td ID="t7" CLASS="tab">選項 7</td> </tr><tr> <td ID="t1base" STYLE="height:2; border-left:solid thin white"></td> <td ID="t2base" STYLE="height:2; background-color:white"></td> <td ID="t3base" STYLE="height:2; background-color:white"></td> <td ID="t4base" STYLE="height:2; background-color:white"></td> <td ID="t5base" STYLE="height:2; background-color:white"></td> <td ID="t6base" STYLE="height:2; background-color:white"></td> <td ID="t7base" STYLE="height:2; background-color:white; border-right:solid thin white"></td> </tr><tr><td HEIGHT="*" COLSPAN="7" ID="tabContents" STYLE="border-left:solid thin white;border-bottom:solid thin white;border-right:solid thin white">sample contents</td></tr></table></div><div CLASS="conts" ID="t1Contents"> <p align="center">Tab1的內(nèi)容 </p> </div><div CLASS="conts" ID="t2Contents"> <p align="center">Tab2的內(nèi)容 </p> </div><div CLASS="conts" ID="t3Contents"> <p align="center">Tab3的內(nèi)容 </p> </div><div CLASS="conts" ID="t4Contents"> <p align="center">Tab4的內(nèi)容 </p> </div><div CLASS="conts" ID="t5Contents"> <p align="center">Tab5的內(nèi)容 </p> </div><div CLASS="conts" ID="t6Contents"> <p align="center">Tab6的內(nèi)容 </p> </div><div CLASS="conts" ID="t7Contents"> <p align="center">Tab7的內(nèi)容 </p></div> </body> </html>

 

 

【運行效果】

 網(wǎng)頁中的選項卡運行效果

【難點剖析】

本例的重點是選項卡的樣式和切換選項卡的事件。其中使用了“window.event.srcElement”來獲取選擇的Tab。

【源碼下載】

為了JS代碼的準(zhǔn)確性,請點擊:網(wǎng)頁中的選項卡 進行本實例源碼下載 

標(biāo)簽: JS代碼  選項卡