### 7.3. 節點控制
### 7.3.1. 樣式 ng-style
可以使用一個結構直接表示當前節點的樣式:
<div ng-style="{width: 100 + 'px', height: 100 + 'px', backgroundColor: 'red'}">
</div>
同樣地,綁定一個變量的話,威力大了。
### 7.3.2. 類 ng-class
就是直接地設置當前節點的類,同樣,配合數據綁定作用就大了:
<div ng-controller="TestCtrl" ng-class="cls">
</div>
_ng-class-even_ 和 _ng-class-odd_ 是和 _ng-repeat_ 配合使用的:
<ul ng-init="l=[1,2,3,4]">
<li ng-class-odd="'odd'" ng-class-even="'even'" ng-repeat="m in l">{{ m }}</li>
</ul>
注意里面給的還是表示式,別少了引號。
### 7.3.3. 顯示和隱藏 ng-show ng-hide ng-switch
前兩個是控制 _display_ 的指令:
<div ng-show="true">1</div>
<div ng-show="false">2</div>
<div ng-hide="true">3</div>
<div ng-hide="false">4</div>
后一個 _ng-switch_ 是根據一個值來決定哪個節點顯示,其它節點移除:
<div ng-init="a=2">
<ul ng-switch on="a">
<li ng-switch-when="1">1</li>
<li ng-switch-when="2">2</li>
<li ng-switch-default>other</li>
</ul>
</div>
h3 style=" font-size: small; margin: 0 auto; text-shadow: 1px 1px 1px gray; padding: 2px; color: #555;">7.3.4. 其它屬性控制
_ng-src_ 控制 _src_ 屬性:
<img ng-src="{{ 'h' + 'ead.png' }}" />
_ng-href_ 控制 _href_ 屬性:
<a ng-href="{{ '#' + '123' }}">here</a>
總的來說:
- _ng-src_ src屬性
- _ng-href_ href屬性
- _ng-checked_ 選中狀態
- _ng-selected_ 被選擇狀態
- _ng-disabled_ 禁用狀態
- _ng-multiple_ 多選狀態
- _ng-readonly_ 只讀狀態
**注意:** 上面的這些只是單向綁定,即只是從數據到展示,不能反作用于數據。要雙向綁定,還是要使用 `ng-model` 。
- Introduction
- 關于AngularJS
- 關于本文檔
- 開始的例子
- 依賴注入
- 作用域
- 數據綁定與模板
- 數據->模板
- 模板->數據
- 數據->模板->數據->模板
- 模板
- 定義模板內容
- 內容渲染控制
- 節點控制
- 事件綁定
- 表單控件
- 模板中的過濾器
- 排序 orderBy
- 過濾列表 filter
- 其它
- 例子:表頭排序
- 例子:搜索
- 錨點路由
- 路由定義
- 參數定義
- 業務處理
- 定義模板變量標識標簽
- AJAX
- HTTP請求
- 廣義回調管理
- 工具函數
- 上下文綁定
- 對象處理
- 類型判定
- 其它服務
- 日志
- 緩存
- 計時器
- 表達式函數化
- 模板單獨使用
- 自定義模塊和服務
- 模塊和服務的概念與關系
- 定義模塊
- 定義服務
- 引入模塊并使用服務
- 附加模塊 ngResource
- 使用引入與整體概念
- 基本定義
- 基本使用
- 定義和使用時的占位量
- 實例
- AngularJS與其它框架的混用(jQuery, Dojo)
- 自定義過濾器
- 自定義指令directive
- 指令的使用
- 指令的執行過程
- 基本的自定義方法
- 屬性值類型的自定義
- Compile的細節
- transclude的細節
- 把節點內容作為變量處理的類型
- 指令定義時的參數
- Attributes的細節
- 預定義的 NgModelController
- 預定義的 FormController
- 示例:文本框
- 示例:模板控制語句 for
- 示例:模板控制語句 if/else