Angular Material - 选项卡小部件

md-tabsmd-tab Angular 指令用于在应用程序中显示选项卡。 md-tabs 是 md-tab 元素的分组容器。


属性 - md-tabs

下表列出了md-tabs不同属性的参数及说明。

Sr.No 参数和描述
1

md-selected

活动/选定选项卡的索引。

2

md-no-ink

如果存在,禁用墨迹波纹效果。

3

md-no-ink-bar

如果存在,则禁用选择墨迹栏。

4

md-align-tabs

指示选项卡按钮位置的属性:bottom 或 top; 默认为 top。

5

md-stretch-tabs

指示是否拉伸制表符的属性:auto、always 或 never; 默认为 auto。

6

md-dynamic-height

启用后,选项卡包装器将根据所选选项卡的内容调整大小。

7

md-center-tabs

启用后,如果不需要分页,选项卡将居中。

8

md-no-pagination

启用后,分页将保持关闭状态。

9

md-swipe-content

启用后,将启用滑动手势,以便内容区域在选项卡之间跳转。

10

md-enable-disconnect

启用后,对于未显示的选项卡,范围将断开连接。 这可以提高性能,但也可能会导致意外问题,因此不建议大多数用户使用。

11

md-autoselect

如果存在,将自动选择初始加载后添加的任何选项卡。


属性 - md-tab

下表列出了md-tab各属性的参数及说明。

Sr.No 参数和描述
1

label

用于指定简单字符串作为选项卡标签的可选属性。

2

ng-disabled

如果存在,禁用选项卡选择。

3

md-on-deselect

取消选择选项卡后要计算的表达式。

4

md-on-select

选择选项卡后要计算的表达式。

5

md-active

如果为 true,则设置活动选项卡。

注意 − 一次只能有一个活动选项卡。


示例

以下示例展示了 md-tabs 的使用以及 tabs 组件的使用。

am_tabs.html

<html lang = "en">
   <head>
      <link rel = "stylesheet"
         href = "https://www.w3ccoo.com/lib/angular_material/1.0.0/angular-material.min.css">
      <script src = "https://cdn.staticfile.org/angular.js/1.4.8/angular.min.js"></script>
      <script src = "https://cdn.staticfile.org/angular.js/1.4.8/angular-animate.min.js"></script>
      <script src = "https://cdn.staticfile.org/angular.js/1.4.8/angular-aria.min.js"></script>
      <script src = "https://cdn.staticfile.org/angular.js/1.4.8/angular-messages.min.js"></script>
      <script src = "https://www.w3ccoo.com/lib/angular_material/1.0.0/angular-material.min.js"></script>
      <link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
      
      <script language = "javascript">
         angular
            .module('firstApplication', ['ngMaterial'])
            .controller('tabController', tabController);

         function tabController ($scope) {            
            $scope.data = {
               selectedIndex: 0,
               secondLocked:  true,
               secondLabel:   "2",
               bottom:        false
            };
             
            $scope.next = function() {
               $scope.data.selectedIndex = Math.min($scope.data.selectedIndex + 1, 2) ;
            };
             
            $scope.previous = function() {
               $scope.data.selectedIndex = Math.max($scope.data.selectedIndex - 1, 0);
            };
         }	  
      </script>      
   </head>
   
   <body ng-app = "firstApplication"> 
      <div id = "tabContainer" ng-controller = "tabController as ctrl" ng-cloak>
         <md-content class = "md-padding">
            <md-tabs class = "md-accent" md-selected = "data.selectedIndex"
               md-align-tabs = "{{data.bottom ? 'bottom' : 'top'}}">
               <md-tab id = "tab1">
                  <md-tab-label>1</md-tab-label>
                  <md-tab-body>Item #1 <br/>selectedIndex  =  0;</md-tab-body>
               </md-tab>
               
               <md-tab id = "tab2" ng-disabled = "data.secondLocked">
                  <md-tab-label>{{data.secondLabel}}</md-tab-label>
                  <md-tab-body>Item #2 <br/>selectedIndex  =  1;</md-tab-body>
               </md-tab>
               
               <md-tab id = "tab3">
                  <md-tab-label>3</md-tab-label>
                  <md-tab-body>Item #3<br/>selected Index  =  2;</md-tab-body>
               </md-tab>
            </md-tabs>
         </md-content>
         
         <div class = "md-padding" layout = "row" layout-sm = "column"
            layout-align = "left center" style = "padding-top: 0;">
            <md-checkbox ng-model = "data.secondLocked" aria-label = "Disable tab 2?"
               style = "margin: 5px;">Disable tab 2?</md-checkbox>
            <md-checkbox ng-model = "data.bottom" aria-label = "Align tabs to bottom?"
               style = "margin: 5px;">Align tabs to bottom?</md-checkbox>
         </div>
         
      </div>
   </body>
</html>

结果

验证结果。

❮ angular_material_widgets.html