時間範囲効果を実現するためのJavaScript

時間範囲効果を実現するためのJavaScript

この記事では、時間範囲効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。

現在時刻より前の時間範囲(6か月前)

レンダリング

js ファイルのコード スニペット

/*クエリの日付範囲(現在時刻以降) Vivian 2020/12/04 追加 */
//rangeVal: 2つの日付間の区切り文字 num: 間隔 timeType: 時間の種類 function funGetRangeDateByLess(rangeVal,num,timeType){
    var returnVal="";
    var その他の値="";
    var その他の時間="";
    var curTime = 新しい Date();
    var curTimeVal = curTime.getFullYear() + '-' + PrefixZero((curTime.getMonth() + 1), 2) + '-' + PrefixZero(curTime.getDate(), 2);
    スイッチ (timeType) {
        ケース 1://var addMinutes = curTime.setMinutes(curTime.getMinutes() - num);
            otherTime=新しい日付(分を追加);
            壊す;
        ケース 2://var addMinutes = curTime.setHours(curTime.getHours() - num);
            otherTime=新しい日付(分を追加);
            壊す;
        ケース 3://dayvar addDate = curTime.setDate(curTime.getDate() - num);
            otherTime=新しい日付(addDate);
            壊す;
        ケース 4://monthvar addMonth = curTime.setMonth(curTime.getMonth() - num);
            otherTime=新しい日付(addMonth);
            壊す;
        ケース 5://yearvar addYear = curTime.setFullYear(curTime.getFullYear() - num);
            otherTime=新しい日付(addYear);
            壊す;
        デフォルト:
            壊す;
    }
    otherVal = otherTime.getFullYear() + '-' + PrefixZero((otherTime.getMonth() + 1), 2) + '-' + PrefixZero(otherTime.getDate(), 2);
    return returnVal=otherVal+rangeVal+curTimeVal;
}

/*ゼロを自動的に埋める Vivian 2020/12/04 追加 */
関数PrefixZero(num, n) {
    (Array(n).join(0) + num).slice(-n) を返します。
}

コードスニペットの使用

var fillhelptime=funGetRangeDateByLess(" , ",6,4);
laydate.render({
        要素: "#fillhelptime",
        範囲: "、"、
        タイプ: '日付'、
        value:fillhelptime, //デフォルト値 });

日付の時間範囲(前後何日)

レンダリング

js ファイルのコード スニペット

/*日付範囲を照会する(特定の日付の前後何日) Add By Vivian 2021/04/06 */
//rangeVal: 2 つの日付間の区切り文字date: 特定の日付beforeDays: 最初の N 日間afterDays: 最後の N 日間function funGetRangeDateByBeforeAndAfter(rangeVal,date,beforeDays,afterDays){
    var dateVaule1 = new Date(date);//時刻形式に変換 var dateVaule2 = new Date(date);//時刻形式に変換 var startDate = new Date(dateVaule1.setDate(dateVaule1.getDate() - beforeDays));//最初の N 日間 var endDate = new Date(dateVaule2.setDate(dateVaule2.getDate() + afterDays));//後の N 日間 var date1 = startDate.getFullYear() + '-' + PrefixZero((startDate.getMonth() + 1), 2) + '-' + PrefixZero(startDate.getDate(), 2);
    var date2 = endDate.getFullYear() + '-' + PrefixZero((endDate.getMonth() + 1), 2) + '-' + PrefixZero(endDate.getDate(), 2);
    var returnVal=日付1+範囲値+日付2;
    returnVal を返します。
}

/*ゼロを自動的に埋める Vivian 2020/12/04 追加 */
関数PrefixZero(num, n) {
    (Array(n).join(0) + num).slice(-n) を返します。
}

ある時点の時間範囲(前後何日)

レンダリング

js ファイルのコード スニペット

/*日付範囲を照会する(特定の時点の前後の時間はどれくらいか) Vivian 2021/04/06 追加 */
//rangeVal: 2 つの日付間の区切り文字 timeType: それらの間の時間タイプ date: 特定の日付 beforeDays: 最初の N 日 afterDays: 最後の N 日 function funGetRangeDateByBeforeAndAfter(rangeVal,timeType,date,beforeNum,afterNum){
    var dateVaule1 = new Date(date);//時刻形式に変換 var dateVaule2 = new Date(date);//時刻形式に変換 var startDate = "";
    var 終了日 = "";
    スイッチ (timeType) {
        ケース 1://startDate = new Date(dateVaule1.setMinutes(dateVaule1.getMinutes() - beforeNum));//最初の N 分endDate = new Date(dateVaule2.setMinutes(dateVaule2.getMinutes() + afterNum));//N 分後break;
        ケース 2://startDate = new Date(dateVaule1.setHours(dateVaule1.getHours() - beforeNum));//最初の N 時間endDate = new Date(dateVaule2.setHours(dateVaule2.getHours() + afterNum));//N 時間後break;
        ケース 3://daysstartDate = new Date(dateVaule1.setDate(dateVaule1.getDate() - beforeNum));//最初の N 日endDate = new Date(dateVaule2.setDate(dateVaule2.getDate() + afterNum));//N 日後break;
        ケース 4://monthstartDate = new Date(dateVaule1.setMonth(dateVaule1.getMonth() - beforeNum));//最初の N か月endDate = new Date(dateVaule2.setMonth(dateVaule2.getMonth() + afterNum));//N か月後break;
        case 5://yearstartDate = new Date(dateVaule1.setFullYear(dateVaule1.getFullYear() - beforeNum));//最初の N 年endDate = new Date(dateVaule2.setFullYear(dateVaule2.getFullYear() + afterNum));//N 年後var addYear = curTime.setFullYear(curTime.getFullYear() - num);
            壊す;
        デフォルト:
            壊す;
    }
    var returnVal1 = startDate.getFullYear() + '-' + PrefixZero((startDate.getMonth() + 1), 2) + '-' + PrefixZero(startDate.getDate(), 2);
    var returnVal2 = endDate.getFullYear() + '-' + PrefixZero((endDate.getMonth() + 1), 2) + '-' + PrefixZero(endDate.getDate(), 2);
    var returnVal=returnVal1+rangeVal+returnVal2;
    returnVal を返します。
}

/*ゼロを自動的に埋める Vivian 2020/12/04 追加 */
関数PrefixZero(num, n) {
    (Array(n).join(0) + num).slice(-n) を返します。
}

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScriptは指定された範囲の時間リストを生成します
  • extjs 時間範囲選択自動判定実装コード

<<:  LinuxシステムにおけるMySQLの一般的な操作コマンド

>>:  nginxはdockerコンテナ内に設定ファイルを自動的に生成します

推薦する

Vue.jsはタイムライン機能を実装します

この記事では、タイムライン機能を実装するためのVue.jsの具体的なコードを参考までに共有します。具...

HTML の基礎必読 - CSS スタイルシートの包括的な理解

CSS (カスケーディング スタイル シート) は、HTML Web ページを美しくするために使用さ...

CSS で子 div の高さを親コンテナの残りのスペースに合わせる方法

1. フローティング方式を使用する効果画像: コードは次のとおりです: (.content の高さは...

Tomcatの自動シャットダウンに関するバグ修正

序文最近、4 年間実行されている Java EE Web プロジェクトでは、システムが開けないという...

VmWareでcentos7をインストールするときにインターネットにアクセスできない問題の解決策

Centos7 のインストール時に VmWare がインターネットにアクセスできない場合はどうすれば...

JavaScript+html はフロントエンドページでランダム QR コード検証を実装します

クールなフロントエンドページのランダムQRコード検証を参考までに共有します。具体的な内容は次のとおり...

ドメイン名を nginx サービスにバインドする方法

nginx.conf で複数のサーバーを設定します。 http リクエストを処理する際、nginx ...

CentOS7 で docker を使用して Apollo 構成センターをデプロイする実装

Apollo オープンソース アドレス: https://github.com/ctripcorp/...

HTML フローティング フレーム (iframe 読み込み HTML) の設定と使用の例

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

VUE + OPENLAYERSがリアルタイムポジショニング機能を実現

目次序文1. ラベルスタイルを定義する2. GeoJSONデータのシミュレーション3. Vercto...

Win10 の組み込み Linux システムを使用して Spring Boot プロジェクトを開始する方法

1. Windows10の組み込みLinuxサブシステムをインストールする1.1. Linuxサブシ...

Vue は Echarts をインポートして折れ線グラフを実現します

この記事では、VueでEchartsをインポートして線散布図を実現する具体的なコードを参考までに共有...

this.parentNode.parentNode (親ノードの親ノード) はどういう意味ですか?

親ノードの親ノード、例えば、このような段落がありますHTML:コードをコピーコードは次のとおりです。...

Tomcat 7.0 で仮想ディレクトリを設定し、仮想パスを構成する方法

Tomcat7.0は仮想ディレクトリを設定します(1)現在、当社のウェブサイトはデフォルトのディレク...

ウィンドウ内のさまざまな距離/スクロール距離の正確な計算の概要

通常、プロジェクト開発では、マージン、位置、座標などを扱う必要があります。悲劇なのは、これらの概念が...