一、说明
标签页功能是一个比较常用的功能。虽然很多前端框架、插件都带有若干种标签页的功能实现,我依然觉得掌握其基本实现会更有利于我们对这个功能的理解,我们也可以更容易地根据实际情况进行修改。
二、代码演示
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:set var="path" value="${pageContext.request.contextPath }"></c:set>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="${path }/js/jquery-1.8.3.js"></script>
<title>Insert title here</title>
<script type="text/javascript">
$(function()
{
//获得第一个li
$("li:first").css("border-bottom","2px solidB0BFD4");
$("li").click(function()
{
//点击其中一个li,遍历所有li,把所有的li的白边框都加上
$("li").each(function()
{
$(this).css("border","2px solid white");
});
//把点击的这个li的下边框编程灰色的
$(this).css("border-bottom","2px solidB0BFD4");
//获得li的tab属性
var tab = $(this).attr("tab");
//把每一个tab对应的div隐藏
$(".tabdiv").hide();
//显示点击的div
$("#"+tab).show();
});
});
</script>
<style type="text/css">
li
{
list-style: none;
width: 60px;
height: 30px;
background:B0BFD4;
text-align: center;
float: left;
border: 2px solid white;
}
.tabdiv
{
width: 400px;
height: 200px;
background:B0BFD4;
}
</style>
</head>
<body>
<div>
<ul>
<li tab="div1">tab1</li>
<li tab="div2">tab2</li>
<li tab="div3">tab3</li>
</ul>
<div id="div0" style="clear: both;"></div>
<div id="div1" class="tabdiv">div1</div>
<div id="div2" class="tabdiv" style="display: none;">div2</div>
<div id="div3" class="tabdiv" style="display: none;">div3</div>
</div>
</body>
</html>
如有错误,欢迎指正!