カラーブロックレポート効果の動的な表示を実現する HTML (サンプルコード)

カラーブロックレポート効果の動的な表示を実現する HTML (サンプルコード)

HTMLカラーブロックを使用してデータを動的に表示する

<スタイル タイプ="text/css">
            *{
                パディング: 0;
                マージン: 0;
            }
            .tubiao、.jihua、.shiji、.riqi{
                幅: 100%;
                オーバーフロー: 非表示;
                上マージン: 10px;
            }
            。左{
                幅: 10%;
                フロート: 左;
                テキスト配置: 中央;
                高さ: 25px;
                行の高さ: 25px;
            }
            。右{
                幅: 90%;
                フロート: 右;
                高さ: 25px;
            }
            スパン {
                幅: 5%;
                高さ: 100%;
                テキスト配置: 中央;
                表示: インラインブロック;
            }
        </スタイル>
<本文>
        <div class="tubiao">
            <div class="jihua">
                <div class="left">計画</div>
                <!--計画スパンを保存する場所-->
                <div class="右プラン"></div>
            </div>
            <div class="shiji">
                <div class="left">実際</div>
                <!--実際のスパンが格納される場所-->
                <div class="正しい行為"></div>
            </div>
            <div class="riqi" id="day_id">
                <!--日付が保存される場所-->
                <div class="正しい日"></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++){
                    時間範囲(d3[i]);
                }
                //アラート("6:"+d1.length+"---"+"3:"+d2.length);
                //アラート("d3.length:"+d3.length);
                (var i=0;i<d1.length;i++){                
                    d1[i],d2[i],i を add_span します。
                }
                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 はオブジェクトの幅です(境界線を除く)
                    span1.style.width = (plan.clientWidth/num*a) + "px"; // プラン内の各グリッドの幅 // プランにノード span1 を挿入
                    プラン。
                    span2.style.backgroundColor = "000000";
                    span2.style.width = (plan.clientWidth/num*b) + "px"; //各グリッドの実際の幅 act.appendChild(span2);
                }それ以外{
                    //アラート("a:"+a+"b:"+b+"i:"+i);
                    if(a=="0"){
                        span1.style.backgroundColor = "000000";    
                        span1.style.width = (plan.clientWidth/num*a) + "px"; // プラン内の各グリッドの幅 // プランにノード span1 を挿入
                        プラン。
                    }それ以外{
                        span1.style.backgroundColor を設定します。
                        //clientWidth はオブジェクトの幅です(境界線を除く)
                        span1.style.width = (plan.clientWidth/num*a) + "px"; // プラン内の各グリッドの幅 // プランにノード span1 を挿入
                        プラン。
                    }
                    if(b=="0"){
                        span2.style.backgroundColor = "000000";
                        span2.style.width = (plan.clientWidth/num*b) + "px"; //各グリッドの実際の幅 act.appendChild(span2);                    
                    }それ以外{
                        span2.style.backgroundColor を設定します。
                        span2.style.width = (plan.clientWidth/num*b) + "px"; //各グリッドの実際の幅 act.appendChild(span2);
                    }                
                }
            }            
            //日付データ挿入関数 time_span(time){
                //span ブロックを作成します var span = document.createElement("span");                
                span.style.width = (plan.clientWidth/num*1) + "px"; //各スパンの幅 span.innerHTML = "" + time;
                day.appendChild(span);
            }
            //ランダム関数 function rnd(min,max){
                Math.round(Math.random()*(max - min)+min) を返します。                
            }
            関数QueryData() {
                var 表示スタイル = "1";
                $.ajax({
                    タイプ: "投稿",
                    URL: "Test.aspx",
                    データ型: "テキスト",
                    データ: { "表示スタイル": displayStyle },
                    エラー: 関数 (XMLHttpRequest、textStatus、errorThrown) {
                        アラート(エラースロー + XMLHttpRequest.responseText);
                    },
                    成功: 関数 (json) {
                        試す {
                            最初にjsonをロードします。
                        }
                        キャッチ(e){}
                    }
                });
            }
            //クエリデータ();
        </スクリプト>
    </本文>

上記は私が紹介した HTML レポート効果 (サンプル コード) です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  Bootstrap 3.0 学習ノート グリッドシステム事例

>>:  MySQLデータベースのマスタースレーブレプリケーションと読み取り書き込み分離に関する詳細なチュートリアル

推薦する

HTML CSS3は画像表示効果を引き伸ばさない

1. transform 属性を使用して、画像を拡大せずに表示します (パスの問題は必要に応じて修正...

Win7 での mysql5.5 インストール グラフィック チュートリアル

MySQL のインストールは比較的簡単なので、通常は次のステップに直接進み、注意が必要な点に集中する...

Vue のプラグインとコンポーネントの違いと使い方のまとめ

このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...

Linux でスワップ領域を確認する 5 つのコマンドの概要

序文Linux では、スワップ パーティションとスワップ ファイルの 2 種類のスワップ領域を作成で...

Vue コンポーネント ライブラリ ElementUI はテーブル読み込みツリー データのチュートリアルを実装します

ElementUIは、参考のためにテーブルツリーリストの読み込みチュートリアルを実装しています。具体...

MySQL 8.0.22 のダウンロード、インストール、設定方法のグラフィックチュートリアル

参考までにMySQL 8.0.22をダウンロードしてインストールしてください。具体的な内容は次のとお...

JSインターセプト文字列の3つの方法の詳細な説明

JS には、文字列をインターセプトするための 3 つのメソッド、 slice() 、 substri...

CSS を使用して同じ親タグの左側と右側に 2 つのボタンを配置する方法

この記事では、主に同じ親タグの左側と右側にある 2 つのボタンの CSS レイアウト方法を紹介し、皆...

IIS サーバーから apk ファイルをダウンロードする際の 404 エラーの解決策

最近、IIS をサーバーとして使用すると、apk ファイルがサーバーにアップロードされましたが、ダウ...

Vue+el-tableはセルの結合を実現します

この記事の例では、参考までにセルの結合を実現するためのel-tableの具体的なコードを共有していま...

TomcatコンポーネントはWebサーバーのアーキテクチャの進化を示しています

1. tomcat とは誰ですか? 2. Tomcat は何ができますか? Tomcat は Web...

Angularフレームワークのビュー抽象定義の詳細な説明

序文「大規模なフロントエンド プロジェクト向け」に設計されたフロントエンド フレームワークである A...

JS における ES6 継承と ES5 継承の違い

目次継承ES5 プロトタイプ継承ES6 クラス継承両者の違いES5プロトタイプ継承の内部実装ES6 ...

ウェブページのカラーマッチング例分析: 緑色のカラーマッチングウェブページ分析

<br />緑は黄色と青(寒色と暖色)の中間の色で、より穏やかな色です。そのため、緑は最...