Angular实现用ng-class和ng-style控制数组最后一个数据为红色

news2024/11/26 23:19:36

首先我们来看class方案实现

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.staticfile.org/angular.js/1.4.6/angular.min.js"></script> 
</head>
<style>
    .red{
        color: red;
    }
</style>
<body>
    <div ng-app="myApp" ng-controller="myController">

        <div class="input-group">
            <input ng-model="task" type="text" class="form-control">
            <span class="input-group-btn">
                <button class="btn btn-default" ng-click="add()">提交</button>
            </span>
        </div>

        <h4 ng-if="tasks.length>0">任务列表</h4>
        
        <ul class="list-group">
            <li ng-repeat="item in tasks track by $index" 
                ng-class="{red:$last}"
            >   
                {{item}}
                <a ng-click="tasks.splice($index,1)">删除</a>
            </li>
        </ul>

    </div>

    <script>
        var app = angular.module("myApp", []);
        app.controller("myController", function ($scope) {
            $scope.task ="";
            $scope.tasks =['1','2','3'];
            $scope.add=function(){
                $scope.tasks.push($scope.task);
            }
            $scope.lastItem = false
            // 实现最后一条数据显示为红色
            $scope.$on('$viewContentLoaded', function() {
            var lastItem = angular.element('li:last-child');
            if (lastItem.length > 0) {
                $scope.lastItem = true;
                lastItem.addClass('red');
            }
        });
        });

    </script>
</body>
</html>

然后我们来看看style方案

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.staticfile.org/angular.js/1.4.6/angular.min.js"></script> 
</head>

<body>
    <div ng-app="myApp" ng-controller="myController">

        <div class="input-group">
            <input ng-model="task" type="text" class="form-control">
            <span class="input-group-btn">
                <button class="btn btn-default" ng-click="add()">提交</button>
            </span>
        </div>

        <h4 ng-if="tasks.length>0">任务列表</h4>
 
        <ul class="list-group">
            <li ng-repeat="item in tasks track by $index" 
                ng-style="colorObj[$index]"
            >   
                {{item}}
                <a ng-click="tasks.splice($index,1); getColor();">删除</a>
            </li>
        </ul>

    </div>

    <script>
        var app = angular.module("myApp", []);
        app.controller("myController", function ($scope) {
            $scope.task ="";
            $scope.tasks =['1','2','3'];
            $scope.add=function(){
                $scope.tasks.push($scope.task);
                $scope.getColor();
            }
            $scope.colorObj = [];


            // 实现最后一条数据显示为红色
            $scope.getColor = function(){ 
                for(var i = 0;i<$scope.tasks.length;i++){
                    $scope.colorObj[i] =  {'color':'black'}
                    if($scope.tasks.length==i+1){
                        $scope.colorObj[i] =  {'color':'red'}
                    }
                }
            }

            $scope.getColor();
        });

    </script>
</body>
</html>

最后我们都能得到下面的效果

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/627284.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python模块的安装

1.用pip命令安装模块 pip是python官方的编程环境提供的一个命令&#xff0c;主要功能就是安装和卸载第三方模块。 用pip命令安装模块的方法最简单也最常用&#xff0c;这种默认将模块安装在python安装目录中的“site-packages"文件下。 1.1 pip命令安装模块的具体方法 …

MySQL的索引为什么要下推?

文章目录 一、回表操作 二、主键索引 三、非主键索引 四、低版本操作 五、高版本操作 六、总结 一、回表操作 对于数据库来说&#xff0c;只要涉及到索引&#xff0c;必然绕不过去回表操作。当然这也是我们今天所讲的内容的前提基础。说到回表&#xff0c;我们需要从索引…

HarmonyOS学习路之开发篇—Java UI框架(DirectionalLayout)

DirectionalLayout DirectionalLayout是Java UI中的一种重要组件布局&#xff0c;用于将一组组件(Component)按照水平或者垂直方向排布&#xff0c;能够方便地对齐布局内的组件。该布局和其他布局的组合&#xff0c;可以实现更加丰富的布局方式。 DirectionalLayout示意图 支持…

微信小程序实现瀑布流布局效果

一、效果 二、内容 1、xml代码 <!-- 列表 --><view class"list_title">推荐</view><view class"waterfall"><block wx:for"{{list}}" wx:key"index" wx:for-index"id" wx:for-item"itemNam…

cmd进入mysql及常用的mysql操作

cmd进入mysql操作 winR&#xff0c;输入cmd&#xff0c;打开cmd窗口&#xff0c;进入到 mysql bin目录的路径下 第一步&#xff1a;启动mysql服务&#xff0c;可以通过“net start myql”命令实现&#xff1b; 第二步&#xff1a;先使用DOS命令进入mysql的安装目录下的bin目…

ChatGPT 国内镜像网站独家汇总:发现最优秀的人工智能对话体验

欢迎来到我们的 ChatGPT 镜像网站汇总博客&#xff01;在这个令人激动的人工智能时代&#xff0c;ChatGPT 作为一款顶尖的语言模型&#xff0c;已经引起了全球范围内的热议。但是&#xff0c;您是否曾经为了找到最佳的 ChatGPT 使用体验而苦苦搜寻&#xff1f;别担心&#xff0…

程序员工作中的 80/20 法则如何体现?

80/20 原则的基础概念 该原则认为&#xff0c; 大部分效果出自少数起因。例如&#xff0c; 少数人得到大部分收入&#xff0c; 少数研究者做出大多数创新成果&#xff0c;少数作者写出大部分图书&#xff0c;等等。 您可能听说过 80/20 原则——它在个人生产力文献中随处可见…

国产文档控件Spire.Doc for.NET ,增强从 Word 到 PDF 和 HTML 的转换

Spire.Doc pack &#xff08;hotfix&#xff09; 11.5.12 增强了从 Word 到 PDF 和 HTML 的转换 很高兴地宣布发布 Spire.Doc 11.5.12。此版本增强了从 Word 到 PDF 和 HTML 的转换。此外&#xff0c;此版本还修复了一些已知问题&#xff0c;例如应用程序在加载文档时抛出“Sy…

django实现读取数据导出生成excel表格

目录 一、简单示例&#xff1a; 1.创建文件对象&#xff1a; 2.添加工作表&#xff1a; 3.写入数据&#xff1a; 二、实践出真理 需要先安装xlwt模块 pip install -i https://pypi.douban.com/simple xlwt一、简单示例&#xff1a; import xlwt# 创建一个Excel文件对象 …

教你该如何设计接口测试用例方法!

目录 前言&#xff1a; 一、用例设计过程&#xff1a; 二、接口测试用例构思结构&#xff1a; 三、测试过程验证点&#xff1a; 前言&#xff1a; 接口测试用例设计方法是进行接口测试的重要步骤。设计有效的测试用例可以帮助我们发现软件中可能存在的问题和缺陷&#xff…

有了IP地址,还需要MAC地址嘛?二选一可否?

概要 在计算机网络中&#xff0c;IP地址和MAC地址是两个最基本的概念。IP地址在互联网中是用于标识主机的逻辑地址&#xff0c;而MAC地址则是用于标识网卡的物理地址。虽然它们都是用于标识一个设备的地址&#xff0c;但是它们的作用和使用场景是不同的。 IP地址是在网络层&am…

Xilinx原语——IDDR与ODDR的使用(Ultrascale系列)

Xilinx原语——IDDR与ODDR的使用&#xff08;Ultrascale系列&#xff09; 一、IDDR1.1 OPPOSITE_EDGE1.2 SAME_EDGE1.3 SAME_EDGE_PIPELINED1.4 三种模式异同 二、ODDR三、IDDR与ODDR仿真3.1 IDDR仿真3.1.1 IDDR顶层3.1.2 TestBench3.1.3 仿真结果 3.2 ODDR仿真3.2.1 ODDR顶层文…

5.2.9 无分类编址和CIDR

5.2.9 无分类编址和CIDR 前面我们知道&#xff0c;为了更加合理的使用IP地址&#xff0c;采用了子网划分的方法&#xff0c;事实证明子网划分这种网络编址&#xff0c;能够节省IP网络地址&#xff0c;但是到了1993年的时候因特网的增长速度还是让人们感觉到了这些技术它无法阻…

移动信道的多普勒扩展及相干时间

本专栏包含信息论与编码的核心知识&#xff0c;按知识点组织&#xff0c;可作为教学或学习的参考。markdown版本已归档至【Github仓库&#xff1a;https://github.com/timerring/information-theory 】或者公众号【AIShareLab】回复 信息论 获取。 文章目录 移动信道的多普勒扩…

深眸科技专注机器视觉的研发与创新,开启工业自动化、智能化进程

在智能制造、工业效能提升的社会背景之下&#xff0c;中国制造2025战略持续落实&#xff0c;工业制造业转型升级加速&#xff0c;作为人工智能领域重要技术之一的机器视觉&#xff0c;凭借着高精度、高准确度等优势检测能力&#xff0c;不断渗透进工业领域&#xff0c;并呈现出…

全网最全,性能测试-全链路压测问题总结,一篇概全...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 全链路压测可以给…

JavaEE(系列21) -- 传输层协议UDP 和 TCP

目录 1. 应用层和传输层的联系 2. UDP协议 2.1 UDP简介 2.2 UDP格式 2.2.1 目的端口和源端口 2.2.2 报文长度 2.2.3 校验和 3. TCP协议 3.1 TCP简介 3.2 TCP格式 3.2.1 数据偏移和选项(option) 3.2.2 保留项 3.2.3 6位控制位 3.2.4 32位序号和32位确认序号…

华为OD机试真题 Java 实现【滑动窗口】【2023 B卷 100分】,附详细解题思路

一、题目描述 有一个N个整数的数组,和一个长度为M的窗口,窗口从数组内的第一个数开始滑动直到窗口不能滑动为止,每次窗口滑动产生一个窗口和(窗口内所有数和和),求窗口滑动产生的所有窗口和的最大值。 二、输入描述 第一行输入一个正整数N,表示整数个数。(0<N<…

WebGPU 纹理与纹理类型基础 (D3D对纹理的描述比较详细)

纹理与纹理类型&#xff0c;D3D 官方文档描述的比较详细&#xff1a; 介绍 Direct3D 11 纹理 纹理资源是一个结构化的数据集合&#xff0c;用纹素的形式存储。纹素texel代表纹理的最小单位&#xff0c;可以被管线读写。与缓冲区不同&#xff0c;纹理可以在着色器中被纹理采…

中国电源管理芯片上市企业研发投入占比超10%,上海贝岭产品品类持续增加

近年来&#xff0c;中国电源管理芯片市场规模一直保持增长趋势&#xff0c;尽管中国电源管理芯片厂商起步较晚&#xff0c;但是在政策扶持背景下&#xff0c;集成电路国产产品对进口产品的替代效应明显&#xff0c;中国集成电路产品的品质和市场认可度日渐提升&#xff0c;部分…