同一个网页多个tab不能切换的解决方法
在制作门户网站时,由于网站版块较多,要想将所有版块的内容都展现到网站首页页面,特别好的方法就是使用Tab选项卡JS代码。例如新浪、腾讯等大型门户网站首页都使用了大量的TAB切换功能。
在学做网站论坛前面的建站教程中,我们讲了如何自己制作TAB选项卡功能,我们可以使用这样的方法在自己做网站时制作TAB切换功能。但实际上,建网站时,在同一个网页上需要放多个tab切换功能,这会造成无法切换了。
今天学做网站论坛分享一下同一个网页上放多个TAB切换框的方法,通过这个方法,可以在同一个网页上放大量的TAB切换框,并且功能不受影响。
方法/步骤
- 在网页上第一个需要以TAB切换的版块,放上以下的TAB切换代码:
<div id="lib_Tab1">
<div class="lib_Menubox ">
<ul>
<li id="one1" onclick="setTab('one',1,4)" class="hover">新闻1</li>
<li id="one2" onclick="setTab('one',2,4)" >新闻2</li>
<li id="one3" onclick="setTab('one',3,4)">新闻3</li>
<li id="one4" onclick="setTab('one',4,4)">新闻4</li>
</ul>
</div>
<div class="lib_Contentbox lib_tabborder">
<div id="con_one_1" >新闻列表1</div>
<div id="con_one_2" style="display:none">新闻列表2</div>
<div id="con_one_3" style="display:none">新闻列表3</div>
<div id="con_one_4" style="display:none">新闻列表4</div>
</div>
</div> - 在网页上第二个需要以TAB切换的版块,放上以下的TAB切换代码:
<div id="lib_Tab2">
<div class="lib_Menubox lib_tabborder">
<ul>
<li id="two1" onclick="setTab('two',1,4)" >新闻1</li>
<li id="two2" onclick="setTab('two',2,4)"class="hover" >新闻2</li>
<li id="two3" onclick="setTab('two',3,4)">新闻3</li>
<li id="two4" onclick="setTab('two',4,4)">新闻4</li>
</ul>
</div>
<div class="lib_Contentbox lib_tabborder">
<div id="con_two_1" >新闻列表1</div>
<div id="con_two_2" style="display:none">新闻列表2</div>
<div id="con_two_3" style="display:none">新闻列表3</div>
<div id="con_two_4" style="display:none">新闻列表4</div>
</div>
</div> - 如果网页上还需要放更多的TAB切换的版块,只需要复制以上的代码,并将代码里的数字按顺序修改即可;
- 将以下JS代码放到自己网页的特别底部,它是实现TAB切换的关键;
//代码来源:学做网站论坛 https://www.xuewangzhan.net/
<script>
function setTab(name,cursel,n){
for(i=1;i<=n;i++){
var menu=document.getElementById(name+i);
var con=document.getElementById("con_"+name+"_"+i);
menu.className=i==cursel?"hover":"";
con.style.display=i==cursel?"block":"none";
}
}
</script> - 将以下的CSS代码放到自己网页的CSS文件里,用于控制TAB切换的样式。当然可以根据自己需要修改CSS样式,以达到自己的要求。如果不会代码,可以学习一下HTML入门教程。
/*选项卡1*/
#lib_Tab1{width:500px;margin:0px;padding:0px;margin-bottom:15px;}
/*选项卡2*/
#lib_Tab2{width:576px;margin:0px;padding:0px;margin-bottom:15px; }
/*菜单class*/
.lib_tabborder{border:1px solid #95C9E1;}
.lib_Menubox {height:28px;line-height:28px;position:relative;}
.lib_Menubox ul{margin:0px;padding:0px;list-style:none; position:absolute; top:3px; left:0; margin-left:10px; height:25px;text-align:center;}
.lib_Menubox li{float:left;display:block;cursor:pointer;width:114px;color:#949694;font-weight:bold; margin-right:2px;height:25px;line-height:25px; background-color:#E4F2FD}
.lib_Menubox li.hover{padding:0px;background:#fff;width:116px;border-left:1px solid #95C9E1;border-top:1px solid #95C9E1;border-right:1px solid #95C9E1;
color:#739242;height:25px;line-height:25px;}
.lib_Contentbox{clear:both;margin-top:0px; border-top:none;height:181px; text-align:center;padding-top:8px;} - 通过以下的代码,就可以实现在同一个网页上放多个TAB切换功能了。