基本介绍

angular框架下的tab切换,相比较于之前的纯js写的代码,有一个很大的特点就是以数据为驱动,基本上不用搜索dom元素就可以实现效果

基本使用

(1)导航部分使用的是的状态使用的是ng-class,只有当参数是true时,才会显示current这个类,每个li标签也绑定了一个事件可以控制type的取值

(2)主体部分使用的ng-switch,当type值发生改变才会显示对应的li标签

<!DOCTYPE html >
<html lang="en" ng-app="App">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
* {
padding: 0;
margin: 0;
} .clearfix:after {
content: '';
visibility: hidden;
display: block;
clear: both;
} div {
margin: 120px auto;
width: 400px;
} .tab {
list-style: none;
background-color: pink;
} .tab li {
float: left;
width: 100px;
height: 30px;
line-height: 30px;
text-align: center;
font-size: 14px;
position: relative;
} .tab li:after {
content: '';
position: absolute;
height: 20px;
border-right: 1px solid black;
top: 5px;
right: 0px;
} .tab li:last-child:after {
visibility: hidden;
} .tab li.current {
background-color: #ccc;
} .main {
list-style: none;
height: 398px;
border: 1px solid #000;
} .main li {
width: 400px;
height: 300px;
line-height: 300px;
text-align: center;
font-size: 34px;
position: relative;
/*display: none;*/
} /*.main li.current {*/
/*display: block;*/
/*}*/
</style>
<script src="../libs/angular.min.js"></script>
</head>
<body>
<div ng-controller="DemoController">
<ul class="tab clearfix">
<li ng-click="switch(1)" ng-class="{current:type==1}">1</li>
<li ng-click="switch(2)" ng-class="{current:type==2}">2</li>
<li ng-click="switch(3)" ng-class="{current:type==3}">3</li>
<li ng-click="switch(4)" ng-class="{current:type==4}">4</li>
</ul>
<ul class="main" ng-switch="type">
<li ng-switch-when="1">1</li>
<li ng-switch-when="2">2</li>
<li ng-switch-when="3">3</li>
<li ng-switch-when="4">4</li>
</ul>
</div>
<script>
var App = angular.module('App', []);
App.controller('DemoController', ['$scope', function ($scope) {
$scope.type = '1';
$scope.switch = function (value) {
$scope.type = value;
}
}]);
</script>
</body>
</html>

最新文章

  1. C#开源实现MJPEG流传输
  2. Hibernate之环境搭建及demo
  3. 如何布局包含Image和Title的UIButton
  4. python2.x和3.x的区别
  5. emulator: ERROR: x86 emulation currently requires hardware acceleration!
  6. 【转】【WPF】WPF 自定义快捷键命令(Command)
  7. 四个很好用的Sql Server 日期函数:DateDiff、DatePart、DateAdd、DateName
  8. Java EE 在网页输出九九乘法表、三角形、菱形
  9. ps 图片提取线稿方法2种 转
  10. Golang在视频直播平台的高性能实践
  11. zabbix邮件告警
  12. Hdu5510 Bazinga
  13. [LeetCode] K-th Smallest Prime Fraction 第K小的质分数
  14. CodeForces #549 Div.2 C Queen
  15. 1、Keepalived及VRRP原理介绍
  16. 【转载】 火爆的996.ICU项目正在酝酿开源许可证 禁止996公司使用
  17. C# webservice服务跟踪调试方法(转)
  18. web前端工程师在移动互联网时代里的地位问题 为啥C/S系统在PC端没有流行起来,却在移动互联网下流行了起来 为啥移动端的浏览器在很多应用里都是靠边站,人们更加倾向于先麻烦自己一下,下载安装个客户端APP
  19. 怎么设置输入的EditText字母自己主动大写
  20. IDEA 构建为了打 jar 包的工程,包含 maven 打 jar 包的过程

热门文章

  1. noip模拟赛 圆桌游戏
  2. 实用型的DJANGO ORM
  3. ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01653: 表 SYS.AUD$ 无法通过 8192 (在表空间 SYSTEM 中) 扩展
  4. 洛谷—— P1339 [USACO09OCT]热浪Heat Wave
  5. laravel5.5更新到laravel5.7
  6. 简单解决 WIN10更新后 远程桌面提示 CredSSP加密Oracle修正的问题
  7. 【python】蛋疼的中文乱码解决方案
  8. Manthan, Codefest 16 C
  9. [JavaEE] Injecting Bean
  10. Ubuntu中取消秘钥环