美文网首页Web前端之路程序员
红了绿了什么的最有意思了

红了绿了什么的最有意思了

作者: zhaoolee | 来源:发表于2018-10-13 18:37 被阅读102次
  • 最近某厂股市大跌, 真的是绿的不行了, 于是出现了各种段子...

果然红了绿了什么的是永远的话题, 股市深似海O__O "…

  • 与金融公司相关的web开发中, 展示涨跌率是常见的需求, 这些一般都有现成的解决方案, 比如百度提供的echarts

在线展示地址: http://echarts.baidu.com/examples/editor.html?c=area-simple
  • 然而像是在表格中, 用红色标识正值, 用绿色标识负值这种小的需求, 反而需要我花一些时间, 如果你要使用原生js,还要考虑浏览器兼容性, 代码够不够简洁什么的, 博主今天稍微研究了下这个问题, 也整理出了相对简洁易读的代码, 分享一下
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>红了绿了什么的,最有意思了~</title>
</head>
<body>
    <div style="font-size: 20px; margin-bottom: 50px">红了绿了什么的,最有意思了~</div>
    <table>
        <tr>
            <td style="width:100px;">日期</td>
            <td style="width: 100px">涨跌幅</td>
        </tr>
        <tr>
            <td>10月8日</td>
            <td class="red-or-green">-10%</td>
        </tr>
        <tr>
            <td>10月9日</td>
            <td class="red-or-green">-5%</td>
        </tr>
        <tr>
            <td>10月10日</td>
            <td class="red-or-green">6%</td>
        </tr>
        <tr>
            <td>10月11日</td>
            <td class="red-or-green">-8%</td>
        </tr>
        <tr>
            <td>10月12日</td>
            <td class="red-or-green">1%</td>
        </tr>
        <tr>
            <td>10月13日</td>
            <td class="red-or-green">-4%</td>
        </tr>
        <tr>
            <td>10月14日</td>
            <td class="red-or-green">5%</td>
        </tr>
    </table>

    <script>
        // 通过class选择元素的兼容性写法
        function getClass(classname){
            if (document.getElementsByClassName) {
                //使用现有方法
                return document.getElementsByClassName(classname);
            } else {
                //定义一个数组放classname
                var results = new Array();
                //获取所有节点元素
                var elem = document.getElementsByTagName("*");
                for (var i = 0; i < elem.length; i++) {
                    if (elem[i].className.indexOf(classname) != -1) {
                        results[results.length] = elem[i];
                    }
                }
                return results;
            }
        }
        // 获取所有元素
        var all_red_or_green_eles = getClass("red-or-green");
        // 优雅的循环
        var i = all_red_or_green_eles.length;
        while (i--) {
            if(all_red_or_green_eles[i].innerText.indexOf('-') === 0){
                all_red_or_green_eles[i].style.color = "green";
            }else{
                all_red_or_green_eles[i].style.color = "red";
            }
        }

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

小结:

编程是艺术, 代码的简洁易读往往不可兼得, 如果代码同时具备简洁易读的特点, 代码就变得非常优雅了

相关文章

  • 红了绿了什么的最有意思了

    最近某厂股市大跌, 真的是绿的不行了, 于是出现了各种段子... 果然红了绿了什么的是永远的话题, 股市深似海O_...

  • 红了樱桃,绿了芭蕉

    门前老树长新芽,院里枯木又开花;半生存了好多话,藏进了满头白发……还没好好看看你眼睛就花了...... 时...

  • 红了樱桃,绿了芭蕉

    1、很不凑巧的是,广州这边持续阴雨绵绵,有点像重庆的梅雨季节,走在街上,如果不是时不时的飘过的抑扬顿挫的广东话和每...

  • 红了樱桃,绿了芭蕉

    流光容易把人抛,红了樱桃,绿了芭蕉。 翻飞的蜻蜓注了银字笙调,卷烟袅袅作了心字香烧。这,不是分享的时刻,默对,...

  • 红了樱桃,绿了芭蕉

    阳光挥洒着大地,原本渐入冬的时节,又是一片暖意。不知从何时起,春夏秋冬于广东来说,变成了真正的活在日历上的四季;也...

  • 红了樱桃,绿了芭蕉

    静听窗外,风也飘飘,雨也萧萧,时光容易把人抛。红的樱桃,绿的芭蕉。想必颜色也是极美的。雨水洗过的道旁树,那...

  • 红了樱桃,绿了芭蕉

    一片春愁待酒浇…… 舟过吴江,他合上眼眸,嘴角有一丝苦涩的笑,这小舟在波涛上起伏,像极了他如今的境遇:国已破,家门...

  • 红了樱桃,绿了芭蕉。

    流光容易把人抛 时光在走,岁月不留。世界很大,兜兜转转,不经意间我们都在长大。 昨日之日不可留,今日之日必珍惜。忙...

  • 红了樱桃,绿了芭蕉

    红了樱桃,绿了芭蕉 雨水中 樱桃的红 雨水中 芭蕉的绿 干净得 好像没有一点烦恼

  • 红了樱桃,绿了芭蕉

    2018年9月11,12日是我在的学校新生报到的时间,今天是新生报到的最后一天。 看着很多的父母陪着儿女,拿着行李...

网友评论

    本文标题:红了绿了什么的最有意思了

    本文链接:https://www.haomeiwen.com/subject/wehoaftx.html