首页前端开发HTMLHtml 实现动态显示颜色块的报表效果(实例代码)

Html 实现动态显示颜色块的报表效果(实例代码)

时间2024-01-27 15:07:03发布访客分类HTML浏览280
导读:收集整理的这篇文章主要介绍了Html 实现动态显示颜色块的报表效果(实例代码 ,觉得挺不错的,现在分享给大家,也给大家做个参考。 利用htML的颜色块动态展示数据<style tyPE="text/css">...
收集整理的这篇文章主要介绍了Html 实现动态显示颜色块的报表效果(实例代码),觉得挺不错的,现在分享给大家,也给大家做个参考。

利用htML的颜色块动态展示数据

style tyPE="text/css">
            *{
                    padding: 0;
                    margin: 0;
            }
            .tubiao,.jihua,.shiji,.riqi{
                    width: 100%;
                    overflow: hidden;
                    margin-top: 10px;
            }
            .left{
                    width: 10%;
                    float: left;
                    text-align: center;
                    height: 25px;
                    line-height: 25px;
            }
            .right{
                    width: 90%;
                    float: right;
                    height: 25px;
            }
            span {
                    width: 5%;
                    height: 100%;
                    text-align: center;
                    display: inline-block;
            }
            /style>
    
body>
            div class="tubiao">
                div class="jihua">
                    div class="left">
    计划/div>
                    !--计划span存放的地方-->
                    div class="right plan">
    /div>
                /div>
                div class="shiji">
                    div class="left">
    实际/div>
                    !--实际span存放的地方-->
                    div class="right act">
    /div>
                /div>
                div class="riqi" id="day_id">
                    !--日期存放的地方-->
                    div class="right day">
    /div>
                /div>
            /div>
            script type="text/javascript">
                VAR temp1="0-0.5-2-2-2-2-1-1";
    //计划耗时(块的单位宽度)            var temp2="1-1-2-1-2-0-0-0";
    //实际耗时(块的单位宽度)                        var temP3="5/19-5/20-5/21-5/22-5/23-5/24-5/25-5/26-5/27-5/28";
    //综合日期            var temp=temp1+"~"+temp2+"~"+temp3;
                                var plan = document.getElementsByclassname("plan")[0];
                var act = document.getElementsByClassName("act")[0];
                var day = document.getElementsByClassName("day")[0];
                var num = 20;
    //创建多少个格            load_First(temp);
            //分割数据和添加色块操作            function load_first(temp){
                    var demo=temp.splIT("~");
                    var d1=demo[0].split("-");
    //计划耗时(块的单位宽度)数组                var d2=demo[1].split("-");
    ////实际耗时(块的单位宽度)数组                var d3=demo[2].split("-");
    //综合日期数组                for(var i=0;
    id3.length;
i++){
                        time_span(d3[i]);
                }
                    //alert("6:"+d1.length+"---"+"3:"+d2.length);
                    //alert("d3.length:"+d3.length);
                    for(var i=0;
    id1.length;
i++){
                                        add_span(d1[i],d2[i],i);
                }
                    document.getElementById("day_id").style.marginLeft="-30px";
             }
                        //新增颜色块,a为计划颜色块宽度,b为实际颜色块宽度            function add_span(a,b,i){
                    //创建span块                var span1 = document.createElement("span");
                    var span2 = document.createElement("span");
                    //定义随机底色                var spa = "rgba(" + rnd(0,255)+ "," + rnd(0,255)+ ","+ rnd(0,255)+ ","+ rnd(0.5,1) +")";
//每一个颜色随机出来                if(i==0){
                        span1.style.backgroundColor = "000000";
                        //clientWidth是对象看到的宽度(不含边线,即border)                    span1.style.width = (plan.clientWidth/num*a) + "px";
    //计划的每一格的宽度                    //插入节点span1至plan                    plan.appendChild(span1);
                        span2.style.backgroundColor = "000000";
                        span2.style.width = (plan.clientWidth/num*b) + "px";
    //实际的每一格的宽度                    act.appendChild(span2);
                }
else{
                        //alert("a:"+a+"b:"+b+"i:"+i);
                    if(a=="0"){
                            span1.style.backgroundColor = "000000";
                                span1.style.width = (plan.clientWidth/num*a) + "px";
    //计划的每一格的宽度                        //插入节点span1至plan                        plan.appendChild(span1);
                    }
else{
                            span1.style.backgroundColor = spa;
                            //clientWidth是对象看到的宽度(不含边线,即border)                        span1.style.width = (plan.clientWidth/num*a) + "px";
    //计划的每一格的宽度                        //插入节点span1至plan                        plan.appendChild(span1);
                    }
                    if(b=="0"){
                            span2.style.backgroundColor = "000000";
                            span2.style.width = (plan.clientWidth/num*b) + "px";
    //实际的每一格的宽度                        act.appendChild(span2);
                                        }
else{
                            span2.style.backgroundColor = spa;
                            span2.style.width = (plan.clientWidth/num*b) + "px";
    //实际的每一格的宽度                        act.appendChild(span2);
                    }
                                }
            }
                        //日期的数据插入            function time_span(time){
                    //创建span块                var span = document.createElement("span");
                                    span.style.width = (plan.clientWidth/num*1) + "px";
    //每一个span的宽度                                span.innerHTML = "" + time;
                    day.appendChild(span);
            }
            //随机函数            function rnd(min,max){
                    return Math.round(Math.random()*(max - min)+min);
                            }
            function QueryData() {
                    var displayStyle = "1";
                $.ajax({
                    type: "post",                    url: "test.aspx",                    dataType: "text",                    data: {
 "DispalyStyle": displayStyle }
,                    error: function (XMLHttPRequest, textstatus, errorThrown) {
                            alert(errorThrown + XMLHttpRequest.responseText);
                    }
,                    success: function (json) {
                        try {
                                load_first(json);
                        }
                        catch (e) {
 }
                    }
                }
    );
            }
                //QueryData();
            /script>
        /body>
    

以上所述是小编给大家介绍的Html 实现动态显示颜色块的报表效果(实例代码),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

html

若转载请注明出处: Html 实现动态显示颜色块的报表效果(实例代码)
本文地址: https://pptw.com/jishu/588359.html
html、css和js注释规范用法小结 HTML大于号、小于号、空格、引号等常用的转义代码写法一览表

游客 回复需填写必要信息