这样的效果怎么做的
直接上代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
<script type="text/javascript" src="http://www.w3school.com.cn/jquery/jquery.js"></script>
<script type="text/javascript" >
$(function(){
var bb=$(".aa li");
bb.click(function(){
$(this).addClass("red")/*给当前元素添加样式*/
.siblings().removeClass("red");/*给当前元素的同类移除样式*/
var index=bb.index(this);/*获取点击的是ul中第几个li*/
alert(index)
$(".yy li")/*选取要显示区域的子节点*/
.eq(index).show()/*显示菜单对应的子元素*/
.siblings().hide();/*隐藏没有选中的子元素siblings是选取同级别元素的意思*/
});
});
</script>
<style>
li{list-style:none; float:left;cursor:pointer; }
.tab{width: 250px;background-color: red}
.none{display: none;}
.red{background-color: red;}
</style>
</head>
<body>
<div class="tab">
<div class="aa">
<ul >
<li class="red">
第一个
</li>
<li >第2个</li>
<li>第3个</li>
<li>第4个</li>
</ul>
</div>
<div>
<ul class="yy">
<li class="">
1sdfasdf个
</li>
<li class="none">是2打发斯蒂芬</li>
<li class="none">阿斯蒂芬3</li>
<li class="none">水电费4</li>
</ul>
</div>
</div>
</body>
</html>
这就是个选项卡的效果,其实呢这里面的内容都全部加载在这个页面了,只不过是默认显示一个其他的都隐藏掉了,然后呢,绑定事件来控制相应的显示跟隐藏。其实你可以自己定一个类名,比如 .hd{display:none};通过添加跟移除这个类名来控制所选内容的显示跟隐藏。
http://gaoqiang19514.github.io/demoPage/
结构进页面去看,js代码就这些OK
// tab
(function(){
var controlList = $('.control-list-item');
var contentList = $('.content-list-item');
controlList.click(function(event) {
var index = $(this).index();
$(this).addClass('active').siblings().removeClass('active');
contentList.eq(index).slideDown('slow').siblings().slideUp('fast');
});
})();
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
6 回答1.1k 阅读
选项卡效果