1.ng-class
(1)
< style >
.red {
background : red ;
color : #fff ;
}
</ style >
</ head >
< body ng-app ="myApp" >
< div ng-controller ="myCtrl" >
< p ng-class ="abc" > 安徽啊,就安化路诶于海峰斤是为框架锕锕嗄安徽a.h吖哈服用过层面上 </ p >
</ div >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , function (scope){
scope.abc = ' red ' ;
}]);
</ script >
(2)
< style >
.red {
background : red ;
}
.green {
background : green ;
}
.blue {
background : blue ;
}
</ style >
</ head >
< body ng-app ="myApp" >
< div ng-controller ="myCtrl" >
< select ng-model ="abc" >
< option value ="red" > 红色 </ option >
< option value ="green" > 绿色 </ option >
< option value ="blue" > 蓝色 </ option >
</ select >
< h1 ng-class ="abc" > 爱极客很搭上次按时,吃吧爱是火车爱是,不好吃暗示会开车 </ h1 >
</ div >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , function (scope){
scope.abc = ' red ' ;
}])
</ script >
</ body >
(3)
< style >
.red {
background : red ;
}
.green {
background : green ;
}
.blue {
background : blue ;
}
</ style >
</ head >
< body ng-app ="myApp" >
< div ng-controller ="myCtrl" >
< button ng-click =getSec() > 获取当前的秒数 </ button >
< h1 ng-class ="{red:x%2==0,blue:x%2!=0}" > 当前的秒数为:{{x}} </ h1 >
</ div >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , function (scope){
scope.getSec = function (){
scope.x = new Date().getSeconds();
}
}])
</ script >
</ body >
(4)
< style >
* {
padding : 0 ;
margin : 0 ;
list-style : none ;
}
.red {
background : red ;
}
.pink {
background : pink ;
}
.green {
background : green ;
}
ul li {
height : 40px ;
font-size : 25px ;
}
</ style >
</ head >
< body ng-app ="myApp" >
< ul ng-controller ="myCtrl" >
< li ng-repeat ="d in data" ng-class ="{red:$first,pink:$middle,green:$last}" >
< span > 编号:{{$index}} </ span >
< span > {{d.name}} </ span >
< span > {{d.sex}} </ span >
</ li >
</ ul >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , function (scope){
scope.data = [
{ ' name ' : ' 张三 ' , ' sex ' : ' 男 ' },
{ ' name ' : ' 张三2 ' , ' sex ' : ' 男2 ' },
{ ' name ' : ' 张三3 ' , ' sex ' : ' 男3 ' },
{ ' name ' : ' 张三4 ' , ' sex ' : ' 男4 ' }
];
}]);
</ script >
效果图:
?
2.从远程服务器读取数据
(1)tab切换
注意:ng-repeat遍历的是数组格式的
< script src ="angular-1.5.8.min.js" ></ script >
< style >
* {
margin : 0 ;
padding : 0 ;
list-style : none ;
}
.box {
width : 450px ;
padding : 20px ;
margin : 50px auto 0 ;
border : 1px solid red ;
}
.box ul li {
margin : 10px 0 0 ;
}
.con1 .a1,.con2 .a2,.con3 .a3,.con4 .a4 {
background : pink ;
color : #fff ;
}
</ style >
</ head >
< body ng-app ="myApp" ng-init ="x='con1'" >
< div ng-controller ="myCtrl" class ="box" >
< nav ng-class ="x" >
< a ng-click ="x='con1'" class ="a1" href ="#" > 新闻 </ a >
< a ng-click ="x='con2'" class ="a2" href ="#" > 热点 </ a >
< a ng-click ="x='con3'" class ="a3" href ="#" > 八卦 </ a >
< a ng-click ="x='con4'" class ="a4" href ="#" > 体育 </ a >
</ nav >
< ul ng-show ="x=='con1'" >
< li ng-repeat ="item in data1" >< a href ="{{item.url}}" > {{item.title}} </ a ></ li >
</ ul >
< ul ng-show ="x=='con2'" >
< li ng-repeat ="item in data2" >< a href ="{{item.url}}" > {{item.title}} </ a ></ li >
</ ul >
< ul ng-show ="x=='con3'" >
< li ng-repeat ="item in data3" >< a href ="{{item.url}}" > {{item.title}} </ a ></ li >
</ ul >
< ul ng-show ="x=='con4'" >
< li ng-repeat ="item in data4" >< a href ="{{item.url}}" > {{item.title}} </ a ></ li >
</ ul >
</ div >
</ body >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , ' $http ' , function (scope,http){
http.get( ' http://qd.bokanedu测试数据/tgr/api/index.aspx?day=82&type=tabs ' ).success( function (d){
scope.data1 = d.a1;
scope.data2 = d.a2;
scope.data3 = d.a3;
scope.data4 = d.a4;
})
}])
</ script >
效果图:
(2)另一种tab切换
< script src ="angular-1.5.8.min.js" ></ script >
< style >
* {
margin : 0 ;
padding : 0 ;
list-style : none ;
}
.box {
width : 450px ;
padding : 20px ;
margin : 50px auto 0 ;
border : 1px solid red ;
}
header {
overflow : hidden ;
background : green ;
height : 40px ;
}
header .grid {
margin : 17px 15px 0 15px ;
float : right ;
width : 16px ;
height : 16px ;
background : url(images/02.png) 0 0 no-repeat ;
}
header .list {
margin : 17px 15px 0 0 ;
float : right ;
width : 16px ;
height : 16px ;
background : url(images/01.png) 0 0 no-repeat ;
}
ul.list {
overflow : hidden ;
}
ul.list li img {
width : 50px ;
height : 50px ;
}
ul.grid {
overflow : hidden ;
}
ul.grid li {
float : left ;
margin : 10px 0 0 25px
}
ul.grid li img {
width : 120px ;
height : 120px ;
}
.pink {
background : pink ;
}
.purple {
background : purple ;
}
</ style >
</ head >
< body ng-app ="myApp" ng-init ="x='list'" >
< div ng-controller ="myCtrl" class ="box" >
< header >
< a href ="#" ng-click ="x='grid'" class ="grid" ></ a >
< a href ="#" ng-click ="x='list'" class ="list" ></ a >
</ header >
< ul class ="list" ng-show ="x=='list'" >
< li ng-repeat ="item in data" ng-class ="{pink:$index%2==0,purple:$index%2!=0}" >
< img ng-src ="{{item.image}}" alt ="" >
< h3 > {{item.title}} </ h3 >
< p > {{item.date}} </ p >
</ li >
</ ul >
< ul class ="grid" ng-show ="x=='grid'" >
< li ng-repeat =" item in data" >
< img ng-src ="{{item.image}}" alt ="" >
</ li >
</ ul >
</ div >
</ body >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , ' $http ' , function (scope,http){
http.get( ' http://qd.bokanedu测试数据/tgr/api/index.aspx?day=82&type=search ' ).success( function (d){
scope.data = d;
})
}])
</ script >
效果图:
3.自定义指令写tab切换
< script src ="jquery-2.1.14.min.js" ></ script >
< script src ="angular-1.5.8.min.js" ></ script >
< style >
.box {
width : 450px ;
margin : 50px auto 10px ;
background : #A6D0C4 ;
}
h1 {
display : none ;
}
h1.show {
display : block ;
}
.select {
background : pink ;
}
</ style >
</ head >
< body ng-app ="myApp" >
< div ng-controller ="myCtrl" >
< div my-tab my-class ="box" my-data ="data1" >
</ div >
< div my-tab my-class ="box" my-data ="data2" >
</ div >
</ div >
</ body >
< script >
var app = angular.module( ' myApp ' ,[]);
app.controller( ' myCtrl ' ,[ ' $scope ' , function (scope){
scope.data1 = [
{ ' title ' : ' 星期一 ' , ' content ' : ' 打豆豆 ' },
{ ' title ' : ' 星期二 ' , ' content ' : ' 睡觉觉 ' },
{ ' title ' : ' 星期三 ' , ' content ' : ' 看视频 ' },
{ ' title ' : ' 星期四 ' , ' content ' : ' 吃零食 ' }
];
scope.data2 = [
{ ' title ' : ' 星期五 ' , ' content ' : ' 吃 ' },
{ ' title ' : ' 星期六 ' , ' content ' : ' 玩 ' },
{ ' title ' : ' 星期日 ' , ' content ' : ' 学 ' }
];
}]);
app.directive( ' myTab ' , function (){
return {
restrict: ' ECMA ' ,
replace: true ,
scope:{
myClass: ' @ ' ,
myData: ' = ' ,
myFn: ' & '
},
controller:[ ' $scope ' , function (scope){
scope.abc = ' 我是自定义指令 ' ;
}],
template: ' <div class="{{myClass}}"><button ng-class="{select:$first}" ng-repeat="d in myData">{{d.title}}</button><h1 ng-class="{show:$first}" ng-repeat=" d in myData">{{d.content}}</h1></div> ' ,
link: function (scope,element,attr,controller){
element.on( ' click ' , ' button ' , function (){
var i = $( this ).index();
$( this ).addClass( ' select ' ).siblings( ' button ' ).removeClass( ' select ' );
$( this ).siblings( ' h1 ' ).eq(i).addClass( ' show ' ).siblings( ' h1 ' ).removeClass( ' show ' );
})
}
}
})
</ script >
?
?效果图:
?
查看更多关于angular ng-class\tab切换(从服务器引入数据)或用指令写的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did222800