ホームページ > ウェブフロントエンド > jsチュートリアル > AngularJS_AngularJS のいくつかの基本スタイルの概要

AngularJS_AngularJS のいくつかの基本スタイルの概要

WBOY
リリース: 2016-05-16 15:48:40
オリジナル
1240 人が閲覧しました

表示と非表示

Angular のすべてはモデルへの変更に基づいており、これらの変更は識別子を通じてインターフェイスに反映されます。
ng-show と ng-hide でも同じことができます。表示と非表示は、渡された式に基づいています。つまり、式が true の場合、ng-show はそれを表示し、それ以外の場合は非表示にします。式が true の場合、ng-hide は非表示になり、それ以外の場合は表示されます。これらの識別子は、表示するには display:block を使用して要素をスタイル設定し、非表示には display:none を使用して要素をスタイル設定することによって機能します。
CSS クラスとスタイル

データ バインディングは {{}} 解析を通じて実行され、クラスとスタイルを動的に設定できるようになります。
NG クラスと NG スタイル

大規模なプロジェクトでは、上記のアプローチは管理できなくなる可能性があり、CSS を正しく作成するにはテンプレートと JavaScript の両方を読み取る必要があります。
Angular は、ng クラスと ng スタイルの識別子を提供します。それぞれに式が必要です。式の実行結果は次のいずれかになります:

  • スペースで区切られたクラス名を表す文字列。
  • クラス名の配列
  • クラス名のブール値へのマッピング

選択された行

テンプレートでは、ng-class の値を {selected:$index==selectedRow} に設定します。モデルが selectedRow を呼び出すと、ng-repeat の $index と一致し、選択されたスタイルが表示されます。同様に、ng-click を設定して、ユーザーがどの行をクリックしたかをコントローラーに通知します。
src と href の提案

ng-src と ng-href の使用をお勧めします。

1

2

<img ng-src="/img/01.png">

<a ng-href="www.segmentfault.com">segmentfault</a>

ログイン後にコピー

すべてのソースコード

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <title>angular demo</title>

  <script src="http://cdn.bootcss.com/angular.js/1.3.0-beta.8/angular.min.js"></script>

</head>

<body>

  <div id="App1" ng-app="shoppingCart" ng-controller="ShoppingCartController">

    <h1>Your demo</h1>

    <!-- demo 1 -->

    <div ng-show='menuState.show'>another another another</div>

    <button ng-click="test2()">切换</button>

 

    <hr><!-- demo 2 -->

    <style type="text/css">

      .menu-disabled-true{

        opacity:1;

        color: red;

        -webkit-transition:all 1000ms linear;

        -moz-transition:all 1000ms linear;

        -o-transition:all 1000ms linear;

      }

      .menu-disabled-false{

        opacity: 0;

        -webkit-transition:all 1000ms linear;

        -moz-transition:all 1000ms linear;

        -o-transition:all 1000ms linear;

      }

    </style>

    <div class="menu-disabled-{{isDisabled}}">adfadfadasda</div>

    <button ng-click="test()">隐藏</button>

    <button ng-click="test1()">显示</button>

    <button ng-click="test11()">切换</button>

 

    <hr><!-- demo 3 -->

    <style type="text/css">

    .error {

      background-color: red;

    }

    .warning {

      background-color: yellow;

    }

    </style>

    <div ng-class='{error:isError, warning:isWarning}'>{{messageText}}</div>

    <button ng-click="showError()">error</button>

    <button ng-click="showWarning()">warning</button>

 

    <hr><!-- demo 4 -->

    <style type="text/css">

      .selected{

        background-color: lightgreen;

      }

    </style>

    <div ng-repeat="item in items" ng-class='{selected:$index==selectedRow}' ng-click='selectedWhich($index)'>

      <span>{{item.product_name}}</span>

      <span>{{item.price | currency}}</span>

    </div>

  </div>

 

  <script>

    var shoppingCartModule = angular.module("shoppingCart", [])

    shoppingCartModule.controller("ShoppingCartController",

      function ($scope) {

        // demo 1

        $scope.menuState = {'show':true};

        $scope.test2 = function () {

          $scope.menuState.show = !$scope.menuState.show;

        };

 

        // demo 2

        $scope.isDisabled = true;

        $scope.test = function () {

          $scope.isDisabled = 'false';

        };

        $scope.test1 = function () {

          $scope.isDisabled = 'true';

        };

        $scope.test11 = function () {

          $scope.isDisabled = !$scope.isDisabled;

        };

 

        // demo 3

        $scope.isError = false;

        $scope.isWarning = false;

        $scope.messageText = 'default, default';

        $scope.showError = function () {

          $scope.messageText = 'This is an error';

          $scope.isError = true;

          $scope.isWarning = false;

        };

        $scope.showWarning = function () {

          $scope.messageText = 'Just a warning, donot warry';

          $scope.isWarning = true;

          $scope.isError = false;

        };

 

        // demo 4

        $scope.items = [

          { product_name: "Product 1", price: 50 },

          { product_name: "Product 2", price: 20 },

          { product_name: "Product 3", price: 180 }

        ];

        $scope.selectedWhich = function (row) {

          $scope.selectedRow = row;

        }

      }

    );

  </script>

</body>

</html>

ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート