通过 DOM 操作 实现选项卡功能
功能实现:
点击导航显示该部分的内容 其他部分的内容不可见 没有点击时 默认显示
* {
padding: 0;
margin: 0;
}
ul,
ol {
list-style: none;
}
.header {
width: 600px;
height: 50px;
line-height: 50px;
text-align: center;
background-color: pink;
display: flex;
}
.header li {
width: 200px;
}
.content {
width: 600px;
height: 400px;
line-height: 400px;
text-align: center;
}
.header .active {
background-color: aquamarine;
}
.content li {
display: none;
font-size: 50px;
}
.content .active {
display: block;
background-color: orange;
}
<ul class="header">
<li>header_1</li>
<li class="active">header_2</li>
<li>header_3</li>
</ul>
<ol class="content">
<li>content_1</li>
<li class="active">content_2</li>
<li>content_3</li>
</ol>
var headerLi = [...document.querySelectorAll('.header li')];
var contentLi = [...document.querySelectorAll('.content li')];
headerLi.forEach(function(item,index){
item.onclick = function(){
headerLi.forEach(function(li,liIndex){
li.classList.remove('active');
contentLi[liIndex].classList.remove('active');
})
item.classList.add('active');
contentLi[index].classList.add('active');
}
})
渲染表格 => 将数组中的数据 用表格的形式显示
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
<th>班级</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
var users = [
{ id: 1, name: 'Jack', age: 18, gender: '男', classRoom: '2XX' },
{ id: 2, name: 'Rose', age: 20, gender: '女', classRoom: '2XX' },
{ id: 3, name: 'Jerry', age: 22, gender: '男', classRoom: '2XX' },
{ id: 4, name: 'Tom', age: 24, gender: '男', classRoom: '2XX' }
]
var tbody = document.querySelector('tbody');
console.log(tbody);
var str = '';
users.forEach(function(item){
str += `
<tr>
<td>${item.id}</td>
<td>${item.name}</td>
<td>${item.age}</td>
<td>${item.gender}</td>
<td>${item.classRoom}</td>
</tr>
`
})
tbody.innerHTML = str;
var users = [
{ id: 1, name: 'Jack', age: 18, gender: '男', classRoom: '2XX' },
{ id: 2, name: 'Rose', age: 20, gender: '女', classRoom: '2XX' },
{ id: 3, name: 'Jerry', age: 22, gender: '男', classRoom: '2XX' },
{ id: 4, name: 'Tom', age: 24, gender: '男', classRoom: '2XX' }
]
var str = users.reduce(function(prev,item){
return prev +
`<tr>
<td>${item.id}</td>
<td>${item.name}</td>
<td>${item.age}</td>
<td>${item.gender}</td>
<td>${item.classRoom}</td>
</tr>
`
},'')
tbody.innerHTML = str;