js实现table切换效果

首先先将html代码写出

<div class="tabs">
		<span class="active title">title1</span>
		<span class="title">title2</span>
		<span class="title">title3</span>
		<div class="content on">内容1</div>
		<div class="content">内容2</div>
		<div class="content">内容3</div>

</div>

写入css代码

span{
	padding:5px;
	border:1px solid  gray;
}
span.active{
	border-color:red;
	color:red;
}
.tabs .content{
	display:none;
	width:300px;
	height:300px;
	border:1px solid #808080;
	margin-top:20px;
}
.tabs .on{
	display:block;
}

写入js代码

//单机span 要知道是第几个span
//让之前有on的content  去掉class on
//让第几个content  添加on
var titles = document.querySelectAll(".tabs .title");//获取class名字为title的值
var contents = document.querySelectAll(".tabs .content");//获取class名字为content的值
//for 初始条件0 结束titles.length
//让之前有on的content  去掉class on
//让第i个content  添加on
for(let i=0; i<titles.length;i++){
	titles[i].onclick=function(){
		var old = document.querySelect(".tabs .content.on");//找到之前有on的content
		old.classList.remove("on");//找到之前有on的content去掉on
		contents[i].classList.add("on");//给当前点击title下标一样的content 添加 on
		var oldt = document.querySelect(".tabs .title.active");
		titles[i].classList.add("active");
	}
}
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个实现 table 表格数据排序功能的示例代码,使用了 JavaScript 和 jQuery 库,并且支持动态数据和分页效果HTML 结构: ```html <table id="myTable"> <thead> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> <th>邮箱</th> </tr> </thead> <tbody> <!-- 动态数据通过 JS 生成 --> </tbody> </table> <div id="pagination"> <!-- 分页效果通过 JS 生成 --> </div> ``` JavaScript 代码: ```javascript // 定义表格数据 var tableData = [ { name: '张三', age: 20, gender: '男', email: 'zhangsan@example.com' }, { name: '李四', age: 25, gender: '女', email: 'lisi@example.com' }, { name: '王五', age: 30, gender: '男', email: 'wangwu@example.com' }, // ... 可以有更多的数据 ]; // 定义每页显示的行数和当前页码 var rowsPerPage = 10; var currentPage = 1; // 初始化表格 function initTable() { // 生成表格内容 var tableBody = $('#myTable tbody'); tableBody.empty(); // 清空表格内容 for (var i = (currentPage - 1) * rowsPerPage; i < currentPage * rowsPerPage && i < tableData.length; i++) { var rowData = tableData[i]; var rowHtml = '<tr>' + '<td>' + rowData.name + '</td>' + '<td>' + rowData.age + '</td>' + '<td>' + rowData.gender + '</td>' + '<td>' + rowData.email + '</td>' + '</tr>'; tableBody.append(rowHtml); } // 生成分页效果 var totalPages = Math.ceil(tableData.length / rowsPerPage); var paginationHtml = ''; for (var i = 1; i <= totalPages; i++) { paginationHtml += '<button class="page-link' + (i === currentPage ? ' active' : '') + '">' + i + '</button>'; } $('#pagination').html(paginationHtml); // 绑定分页按钮的点击事件 $('.page-link').click(function() { currentPage = parseInt($(this).text()); initTable(); }); } // 绑定表头点击事件 $('#myTable th').click(function() { var sortKey = $(this).text().toLowerCase(); tableData.sort(function(a, b) { if (a[sortKey] < b[sortKey]) { return -1; } else if (a[sortKey] > b[sortKey]) { return 1; } else { return 0; } }); initTable(); }); // 初始化表格 initTable(); ``` 这段代码中,我们首先定义了一个表格数据数组 `tableData`,然后定义了每页显示的行数和当前页码,以及一个 `initTable` 函数来生成表格内容和分页效果。 在 `initTable` 函数中,我们首先根据当前页码和每页显示的行数来生成表格内容,然后计算出总共需要显示多少页,并根据总页数来生成分页效果。最后,我们还给分页按钮绑定了点击事件,点击时切换当前页码并重新生成表格内容和分页效果。 在表头点击事件中,我们首先获取当前排序的关键字,然后使用 JavaScript 的 `sort` 函数来对表格数据进行排序,并调用 `initTable` 函数来重新生成表格内容和分页效果。 此外,我们还使用了 jQuery 库来方便地操作 DOM 元素,如获取表格、分页容器和分页按钮等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值