溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

AngularJS點擊添加樣式、點擊變色設(shè)置的實例代碼

發(fā)布時間:2020-10-17 15:01:11 來源:腳本之家 閱讀:271 作者:xyphf 欄目:web開發(fā)

本文介紹了AngularJS點擊添加樣式、點擊變色設(shè)置的實例代碼,分享給大家,具體如下:

首先解釋需求是這樣的,有個列表,當你點擊哪一行時,哪一行背景變成灰色,在JQ中,大家都知道,這是非常容易的,加一個addClass就行了,那么AngularJS如何實現(xiàn)呢?

AngularJS點擊添加樣式、點擊變色設(shè)置的實例代碼

下面我們看代碼部分

<!doctype html>
<html ng-app="a2_11">
<head>
  <title>添加元素樣式</title>
  <script src="../Script/angular.min.js"
      type="text/javascript"></script>
<style type="text/css">
  body{font-size:12px}
  ul{margin:0;padding:0;width:408px;list-style-type:none}
  ul li{float:left;padding:5px 0}
  ul .odd{color:#0026ff}
  ul .even{color:red}
  ul .bold{font-weight:700}
  ul li span{float:left;padding:0 10px;width:52px}
  ul .focus{background-color:#ccc}
</style>
</head>
<body>
  <div ng-controller="c2_11">
    <ul>
      <li ng-class="{{bold}}">
        <span>序號</span>
        <span>姓名</span>
        <span>性別</span>
        <span>是否首條</span>
        <span>是否尾條</span>
      </li>
      <li ng-class-odd="'odd'"
        ng-class-even="'even'"
        ng-repeat=" stu in data"
        ng-click='li_click($index)'
        ng-class='{focus: $index==focus}'>
        <span>{{$index+1}}</span>
        <span>{{stu.name}}</span>
        <span>{{stu.sex}}</span>
        <span>{{$first?'是':'否'}}</span>
        <span>{{$last?'是':'否'}}</span>
      </li>
    </ul>
  </div>
  <script type="text/javascript">
    var a2_11 = angular.module('a2_11', []);
    a2_11.controller('c2_11', ['$scope', function ($scope) {
      $scope.bold = "bold";
      $scope.li_click = function (i) {
        $scope.focus = i;
      };
      $scope.data = [
      { name: "張明明", sex: "女" },
      { name: "李清思", sex: "女" },
      { name: "劉小華", sex: "男" },
      { name: "陳忠忠", sex: "男" }
      ];
    }]);
  </script>
</body>
</html>

1、首先,第一個< li >元素的"ng-class"值與"bold"屬性值綁定,使得該值指定的樣式加粗,這個相信大家都能看懂;

2、使用“ng-class-odd”和"ng-class-even"樣式分別綁定奇數(shù)和偶數(shù)行的樣式,從而實現(xiàn)了隔行換色的功能;

3、最后我們解釋一下,如何使得所點擊的< li >元素變色
 ①在< li >元素的單擊事件中,將執(zhí)行$scope對象中添加的"li_click()"方法;

 ②在該方法中將"$index(行號值)"作為實參傳給方法,并將"focus"屬性值設(shè)為“$index”值;

 ③因此當單擊某行< li >元素時,"focus"屬性值將變?yōu)橄鄳?yīng)的"$index";

 ④此時,< li >元素的"ng-class"樣式指令通過key/value對象的方式指定該元素需要添加的樣式,由于單擊< li >元素時,"$index"變量值和"focus"屬性值相同,也就是說"$index==focus"的返回值為true;

 ⑤此時您應(yīng)該明白了,"ng-class"的樣式指令值變?yōu)?focus";

 ⑥經(jīng)過上面的分析及操作,我們實現(xiàn)了單擊< li >元素時,添加背景樣式的效果.

 以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI