検索
ホームページウェブフロントエンドhtmlチュートリアルHtmlでカラーブロックを動的に表示するレポート効果を実現する方法

今回は、HTML でカラー ブロックを動的に表示するレポート効果を実現する方法を説明します。カラー ブロックを動的に表示するレポート効果を実現するための Html の notes について、実際のケースを見てみましょう。 。

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;i<d3.length;i++){
                    time_span(d3[i]);
                }
                //alert("6:"+d1.length+"---"+"3:"+d2.length);
                //alert("d3.length:"+d3.length);
                for(var i=0;i<d1.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>

これらの事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。

関連書籍:

HTML 画像の img タグの使用方法

HTML の基本的なコントロールとは

テーブルでスラッシュ ヘッダー効果を実現する方法

以上がHtmlでカラーブロックを動的に表示するレポート効果を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
&lt; head&gt;の重要性は何ですかおよび&lt; body&gt; HTMLのタグ?&lt; head&gt;の重要性は何ですかおよび&lt; body&gt; HTMLのタグ?Apr 28, 2025 pm 05:43 PM

この記事では、&lt; head&gt;の役割について説明します。および&lt; body&gt; HTMLのタグ、ユーザーエクスペリエンスへの影響、およびSEOの影響。適切な構造化により、ウェブサイトの機能と検索エンジンの最適化が強化されます。

HTMLのドキュメントで使用されている文字セットを示す方法を説明してください。HTMLのドキュメントで使用されている文字セットを示す方法を説明してください。Apr 28, 2025 pm 05:41 PM

記事では、UTF-8に焦点を当てたHTMLでのキャラクターエンコーディングの指定について説明します。主な問題:テキストの正しい表示を確保し、文字化けされたキャラクターの防止、SEOとアクセシビリティの強化。

HTMLのさまざまなフォーマットタグは何ですか?HTMLのさまざまなフォーマットタグは何ですか?Apr 28, 2025 pm 05:39 PM

この記事では、Webコンテンツの構築とスタイリングに使用されるさまざまなHTMLフォーマットタグについて説明し、テキストの外観に対する影響とアクセシビリティとSEOのセマンティックタグの重要性を強調しています。

「ID」属性とHTML要素の「クラス」属性の違いは何ですか?「ID」属性とHTML要素の「クラス」属性の違いは何ですか?Apr 28, 2025 pm 05:39 PM

この記事では、HTMLの「ID」属性と「クラス」属性の違いについて説明し、一意性、目的、CSS構文、および特異性に焦点を当てています。それらがWebページのスタイリングと機能にどのように影響するかを説明し、のベストプラクティスを提供する

HTMLの「クラス」属性とは何ですか?HTMLの「クラス」属性とは何ですか?Apr 28, 2025 pm 05:37 PM

この記事では、スタイリングとJavaScriptの操作の要素をグループ化するHTML「クラス」属性の役割を説明し、一意の「ID」属性とは対照的です。

HTMLのさまざまな種類のリストは何ですか?HTMLのさまざまな種類のリストは何ですか?Apr 28, 2025 pm 05:36 PM

記事では、HTMLリストタイプについて説明します:注文(&lt; ol&gt;)、ordered(&lt; ul&gt;)、および説明(&lt; dl&gt;)。 Webサイトのデザインを強化するためのリストの作成とスタイリングリストに焦点を当てています。

HTMLエンティティとは何ですか?HTMLエンティティとは何ですか?Apr 28, 2025 pm 05:35 PM

HTMLエンティティは、特殊文字を正しく表示するためにHTMLで使用されるコードであり、ブラウザーとデバイス全体で適切にレンダリングされることを保証します。

崩壊した空白の利点は何ですか?崩壊した空白の利点は何ですか?Apr 28, 2025 pm 05:35 PM

ホワイトスペースの崩壊は、ファイルサイズを削減し、読みやすさを向上させ、Webおよびドキュメント処理のプラットフォーム全体で一貫したフォーマットを確保することにより、コンテンツを最適化します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール