首页 > Web开发 > 详细

AngularJs 指令实现选项卡

时间:2015-12-20 14:35:58      阅读:496      评论:0      收藏:0      [点我收藏+]

技术分享

HTML:

<body ng-controller="Aaa">
    <my-tab my-id="div1" my-data="data1"></my-tab>
    <my-tab my-id="div2" my-data="data2"></my-tab>
</body>

js:

var m1=angular.module(‘myApp‘,[]);
        m1.directive(‘myTab‘,function(){
            return {
                restrict:"E",
                replace:true,
                templateUrl:"temp.html",
                scope:{
                    myId:‘@‘,
                    myData:‘=‘
                },
                link:function(scope,ele,attr){
                    $(ele).delegate(‘input‘,‘click‘,function(){
                        $(this).toggleClass(‘active‘).siblings().removeClass(‘active‘);
                        $(this).siblings(‘div‘).eq($(this).index()).css(‘display‘,‘block‘).siblings(‘div‘).css(‘display‘,‘none‘);
                    });
                }
            };
        });
        m1.controller(‘Aaa‘,[‘$scope‘,function($scope){
            $scope.data1=[
                {title:‘111‘,content:"111111"},
                {title:‘222‘,content:"222222"},
                {title:‘333‘,content:"333333"}
            ];
            $scope.data2=[
                {title:‘444‘,content:"444444"},
                {title:‘555‘,content:"555555"}
            ];
        }]);

temp.html:

<div id="{{myId}}">
    <input ng-repeat="data in myData" type="button" ng-value="{{data.title}}" ng-class="{active:$first}">
    <div ng-repeat="data in myData" ng-style="{display:$first?‘block‘:‘none‘}">{{data.content}}</div>
</div>

 

AngularJs 指令实现选项卡

原文:http://www.cnblogs.com/shytong/p/5060720.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!