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 相关文章推荐
javascript动态添加样式(行内式/嵌入式/外链式等规则)
Jun 24 Javascript
解决js中window.open弹出的是上次的缓存页面问题
Dec 29 Javascript
把jQuery的类、插件封装成seajs的模块的方法
Mar 12 Javascript
javascript学习笔记(五)原型和原型链详解
Oct 08 Javascript
CSS图片响应式 垂直水平居中
Aug 14 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
Apr 14 Javascript
微信小程序的日期选择器的实例详解
Sep 29 Javascript
详解JS模块导入导出
Dec 20 Javascript
解决Webpack 热部署检测不到文件变化的问题
Feb 22 Javascript
深入理解Vue router的部分高级用法
Aug 15 Javascript
Angular CLI 使用教程指南参考小结
Apr 10 Javascript
小程序实现左滑删除的效果的实例代码
Oct 19 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
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
ExtJS下grid的一些属性说明
2009/12/13 Javascript
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
超级简单的jquery操作表格方法
2014/12/15 Javascript
浅谈JavaScript中的作用域和闭包问题
2015/07/07 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
jQuery自定义组件(导入组件)
2016/11/08 Javascript
原生js实现简单的链式操作
2017/07/04 Javascript
5分钟打造简易高效的webpack常用配置
2017/07/04 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
zTree 树插件实现全国五级地区点击后加载的示例
2018/02/05 Javascript
js实现购物车功能
2018/06/12 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
vuejs数据超出单行显示更多,点击展开剩余数据实例
2019/05/05 Javascript
基于JS+HTML实现弹窗提示是否确认提交功能
2020/06/17 Javascript
[02:43]2014DOTA2国际邀请赛 官方Alliance战队纪录片
2014/07/14 DOTA
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
python实现求解列表中元素的排列和组合问题
2018/03/15 Python
python实现的爬取电影下载链接功能示例
2019/08/26 Python
python实现低通滤波器代码
2020/02/26 Python
Python 可视化神器Plotly详解
2020/12/26 Python
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
Python面试题集
2012/03/08 面试题
优秀毕业生推荐信范文
2014/03/07 职场文书
医院节能减排方案
2014/06/13 职场文书
离婚协议书范本样本
2014/08/19 职场文书
暑期培训心得体会
2014/09/02 职场文书
2014年纪检工作总结
2014/11/12 职场文书
2015年度电厂个人工作总结
2015/05/13 职场文书
出纳2015年度工作总结范文
2015/10/14 职场文书
《秋思》教学反思
2016/02/23 职场文书
MySql子查询IN的执行和优化的实现
2021/08/02 MySQL