AngularJS点击添加样式、点击变色设置的实例代码


Posted in Javascript onJuly 27, 2017

本文介绍了AngularJS点击添加样式、点击变色设置的实例代码,分享给大家,具体如下:

首先解释需求是这样的,有个列表,当你点击哪一行时,哪一行背景变成灰色,在JQ中,大家都知道,这是非常容易的,加一个addClass就行了,那么AngularJS如何实现呢?

AngularJS点击添加样式、点击变色设置的实例代码

下面我们看代码部分

<!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"样式分别绑定奇数和偶数行的样式,从而实现了隔行换色的功能;

3、最后我们解释一下,如何使得所点击的< li >元素变色
 ①在< li >元素的单击事件中,将执行$scope对象中添加的"li_click()"方法;

 ②在该方法中将"$index(行号值)"作为实参传给方法,并将"focus"属性值设为“$index”值;

 ③因此当单击某行< li >元素时,"focus"属性值将变为相应的"$index";

 ④此时,< li >元素的"ng-class"样式指令通过key/value对象的方式指定该元素需要添加的样式,由于单击< li >元素时,"$index"变量值和"focus"属性值相同,也就是说"$index==focus"的返回值为true;

 ⑤此时您应该明白了,"ng-class"的样式指令值变为"focus";

 ⑥经过上面的分析及操作,我们实现了单击< li >元素时,添加背景样式的效果.

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
[HTML/CSS/Javascript]WWTJS
Sep 25 Javascript
IE和Firefox下javascript的兼容写法小结
Dec 10 Javascript
jQuery 改变CSS样式基础代码
Feb 11 Javascript
DOM基础教程之使用DOM控制表格
Jan 20 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
Jan 26 Javascript
JS+CSS实现淡入式焦点图片幻灯切换效果的方法
Feb 26 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
Dec 13 Javascript
js遍历添加栏目类添加css 再点击其它删除css【推荐】
Jun 12 Javascript
js根据需要计算数组中重复出现某个元素的个数
Jan 18 Javascript
jquery实现掷骰子小游戏
Oct 24 jQuery
vue实现商品列表的添加删除实例讲解
May 14 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 Javascript
vue中计算属性(computed)、methods和watched之间的区别
Jul 27 #Javascript
angular2+node.js express打包部署的实战
Jul 27 #Javascript
利用Ionic2 + angular4实现一个地区选择组件
Jul 27 #Javascript
vue单页应用中如何使用jquery的方法示例
Jul 27 #jQuery
详解win7 cmd执行vue不是内部命令的解决方法
Jul 27 #Javascript
Vue2.0如何发布项目实战
Jul 27 #Javascript
在Vue中如何使用Cookie操作实例
Jul 27 #Javascript
You might like
PHP中的串行化变量和序列化对象
2006/09/05 PHP
ThinkPHP 3.2 版本升级了哪些内容
2015/03/05 PHP
浅谈php的优缺点
2015/07/14 PHP
Zend Framework教程之资源(Resources)用法实例详解
2016/03/14 PHP
php通过执行CutyCapt命令实现网页截图的方法
2016/09/30 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
tbody元素支持嵌套的注意方法
2007/03/24 Javascript
返回页面顶部top按钮通过锚点实现(自写)
2013/08/30 Javascript
按钮接受回车事件的三种实现方法
2014/06/06 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
javascript算法题:求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2015/04/01 Javascript
浅谈javascript事件取消和阻止冒泡
2015/05/26 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
2017/02/14 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
JS中箭头函数与this的写法和理解
2021/01/14 Javascript
Python实现修改文件内容的方法分析
2018/03/25 Python
对Python中DataFrame按照行遍历的方法
2018/04/08 Python
nginx+uwsgi+django环境搭建的方法步骤
2019/11/25 Python
Python log模块logging记录打印用法解析
2020/01/20 Python
Tensorflow 多线程与多进程数据加载实例
2020/02/05 Python
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
2014年会演讲稿范文
2014/01/06 职场文书
给老师的一封建议书
2014/03/13 职场文书
保研推荐信
2014/05/09 职场文书
高中教师考核方案
2014/05/18 职场文书
优秀高中学生评语
2014/12/30 职场文书
怎样写辞职信
2015/02/27 职场文书
2016年度基层党建工作公开承诺书
2016/03/25 职场文书
导游词之宿迁乾隆行宫
2019/10/15 职场文书
OpenCV-Python实现怀旧滤镜与连环画滤镜
2021/06/09 Python
vue3.0 数字翻牌组件的使用方法详解
2022/04/20 Vue.js