Latest web development tutorials

ionic 切換開關操作

以下實例中,通過切換不同開關checked 顯示不同的值,true 為打開,false 為關閉。

HTML 代碼

<ion-header-bar class="bar-positive">
  <h1 class="title">开关切换</h1>
</ion-header-bar>
         
<ion-content>
  
  <div class="list">
    
    <div class="item item-divider"> 
      Settings
    </div>
    
    <ion-toggle ng-repeat="item in settingsList"
                ng-model="item.checked" 
                ng-checked="item.checked">
      {{ item.text }}
    </ion-toggle>
    
    <div class="item">
    	<!-- 使用 pre 标签展示效果更美观 -->
      <div ng-bind="settingsList | json"></div> 
    </div>
    
    <div class="item item-divider"> 
      Notifications
    </div>
    
    <ion-toggle ng-model="pushNotification.checked"
                ng-change="pushNotificationChange()">
      Push Notifications
    </ion-toggle>
    
    <div class="item">
    	<!-- 使用 pre 标签展示效果更美观 -->
      <div ng-bind="pushNotification | json"></div> 
    </div>
    
    <ion-toggle toggle-class="toggle-assertive"
                ng-model="emailNotification"
                ng-true-value="'Subscribed'"
                ng-false-value="'Unubscribed'">
      Newsletter
    </ion-toggle>
    
    <div class="item">
    	<!-- 使用 pre 标签展示效果更美观 -->
      <div ng-bind="emailNotification | json"></div> 
    </div>
    
  </div>
  
</ion-content>

由於pre標籤衝突,實例中的pre 已替換為div標籤,具體可以在"嘗試一下"中查看。

JavaScript 代碼

angular.module('ionicApp', ['ionic'])

.controller('MainCtrl', function($scope) {

  $scope.settingsList = [
    { text: "Wireless", checked: true },
    { text: "GPS", checked: false },
    { text: "Bluetooth", checked: false }
  ];

  $scope.pushNotificationChange = function() {
    console.log('Push Notification Change', $scope.pushNotification.checked);
  };
  
  $scope.pushNotification = { checked: true };
  $scope.emailNotification = 'Subscribed';
  
});

css 代碼:

body {
  cursor: url('../try/demo_source/finger.png'), auto;
}

效果如下所示: