js选项卡的实现:
思路
1,获取元素;
2,for循环按钮元素添加onclick(点击) 或者 onmousemove(移入)事件;
3,点击当前按钮时会以高亮状态显示,通过for循环历遍把所有的按钮样式设置为空在把所有div的display设置为none。
4,点击当前按钮添加样式,把当前div显示出来,display设置为block。
html代码:
<div id="div1"> <input type="button" class="active" value="1"/> <input type="button" value="2"/> <input type="button" value="3"/> <input type="button" value="4"/> <div class="div2" style="display:block;">11</div> <div class="div2">22</div> <div class="div2">33</div> <div class="div2">44</div> </div>
CSS:
.active { background:#9CC; } .div2 { width:300px; height:200px; border:1px #666666 solid; display:none; }
js代码:
<script>window.onload=function(){ var odiv=document.getElementById('div1');//获取div var btn=odiv.getElementsByTagName('input');//获取div下的input var div2=odiv.getElementsByTagName('div') ;//获取div下的div for(i=0;i<btn.length;i++)//循环每个按钮 { btn[i].index=i //btn[i]是指定button的第i个按钮;为该按钮添加一个index属性,并将index的值设置为i btn[i].onclick=function()//按钮的第i个点击事件 { for(i=0;i<btn.length;i++)//循环去掉button的样式,把div隐藏 { btn[i].className='' //清空按钮的样式 div2[i].style.display='none'//隐藏div } this.className='active'//自身添加active div2[this.index].style.display='block'//this.index是当前div
} } }</script>
新闻热点
疑难解答