用JavaScript编写Tab栏,需要注意每次执行完onmouseover事件后,都要清除一下样式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>tab栏demo</title>
<style>
/*盒子的css样式*/
* {
margin:0;
padding:0;
}
ul {
width: 300px;
height: 50px;
margin:0 auto;
}
li {
list-style: none;
width: 100px;
height: 50px;
background-color: pink;
float: left;
text-align: center;
line-height: 50px;
}
#box {
margin:0 auto;
width: 300px;
height: 200px;
border:1px solid #000;
}
#box div {
width: 300px;
height: 200px;
display: none;
}
</style>
</head>
<body>
<ul>
<li>One</li>
<li>Two</li>
<li>Three</li>
</ul>
<div id="box">
<div>这是盒子一</div>
<div>这是盒子二</div>
<div>这是盒子三</div>
</div>
<script type="text/javascript">
//页面加载完成之后执行函数
window.οnlοad=function(){
//获取各个元素
var lis=document.getElementsByTagName("li");
var box=document.getElementById("box");
var divs=box.getElementsByTagName("div");
for(var i=0;i<lis.length;i++){
lis[i].index=i;
lis[i].οnmοuseοver=function(){
//清除每次残留的样式
for(var j=0;j<lis.length;j++){
lis[j].style.background="pink";
divs[j].style.display="none";
}
//鼠标悬停时添加的样式
this.style.background="red";
divs[this.index].style.display="block";
}
}
}
</script>
</body>
</html>
有问题的地方还请各位大神指出,谢谢