HTML+JS に基づくシンプルな年齢計算ツールの実装

HTML+JS に基づくシンプルな年齢計算ツールの実装

序文

オンラインデモアドレス: http://haiyong.site/age-calculator

JavaScript には、日付 (生年月日) から年齢を計算するのに役立つ組み込みの日付と時刻の関数がいくつか用意されています。これらの JavaScript メソッドを使用すると、誰の年齢も簡単に見つけることができます。これを行うには、ユーザー入力の日付と現在のシステム日付が必要です。

デモンストレーション効果

HTMLコード

<div class="コンテナ">
        <div class="inputs-wrapper">
            <input type="date" id="date-input">
            <button onclick="ageCalculate()">計算</button>
        </div>
        <div class="出力ラッパー">
            <div>
                <span id="年">
                    -
                </span>
                <p>
                    年
                </p>
            </div>
            <div>
                <span id="月">
                    -
                </span>
                <p>
                    月
                </p>
            </div>
            <div>
                <span id="日">
                    -
                </span>
                <p>
                    日数
                </p>
            </div>
        </div>
    </div>

CSSコード

*、
*:前に、
*:後{
    パディング: 0;
    マージン: 0;
    ボックスのサイズ: 境界線ボックス;
}
体{
    背景色: #ff6666;
}
。容器{
    幅: 40%;
    最小幅: 450px;
    位置: 絶対;
    変換: translate(-50%,-50%);
    左: 50%;
    上位: 50%;
    パディング: 50px 30px;
}
。容器 *{
    フォントファミリ: "Poppins"、サンセリフ;
    境界線: なし;
    アウトライン: なし;
}
.inputs-wrapper{
    背景色: #080808;
    パディング: 30px 25px;
    境界線の半径: 8px;
    ボックスの影: 0 15px 20px rgba(0,0,0,0.3);
    下部マージン: 50px;
}
入力、
ボタン{
    高さ: 50px;
    背景色: #ffffff;
    色: #080808;
    フォントの太さ: 500;
    境界線の半径: 5px;
}
入力{
    幅: 60%;
    パディング: 0 20px;
    フォントサイズ: 14px;
}
ボタン{
    幅: 30%;
    フロート: 右;
}
.出力ラッパー{
    幅: 100%;
    ディスプレイ: フレックス;
    コンテンツの両端揃え: スペースの間;
}
.出力ラッパーdiv{
    高さ: 100px;
    幅: 100ピクセル;
    背景色: #080808;
    境界線の半径: 5px;
    色: #ffffff;
    表示: グリッド;
    アイテムを配置: 中央;
    パディング: 20px 0;
    ボックスの影: 0 15px 20px rgba(0,0,0,0.3);

}
スパン{
    フォントサイズ: 30px;
    フォントの太さ: 500;
}
p{
    フォントサイズ: 14px;
    色: #707070;
    フォントの太さ: 400;
}

Javascriptコード

定数ヶ月 = [31,28,31,30,31,30,31,31,31,30,31,30,31];

関数 ageCalculate(){
    今日を新しいDate()とします。
    inputDate を新しい Date(document.getElementById("date-input").value) とします。
    生年月日、生年月日、生年月日を入力します。
    誕生の詳細を = {
        日付:inputDate.getDate(),
        月:inputDate.getMonth()+1,
        年:inputDate.getFullYear()
    }
    現在の年をtoday.getFullYear()とします。
    現在の月をtoday.getMonth()+1とします。
    currentDate を today.getDate() とします。

    leapChecker(現在の年);

    もし(
        birthDetails.year > 現在の年 ||
        ( birthDetails.month > currentMonth && birthDetails.year == currentYear) || 
        (birthDetails.date > currentDate && birthDetails.month == currentMonth && birthDetails.year == currentYear)
    ){
        alert("まだ生まれていません");
        表示結果("-","-","-");
        戻る;
    }

    birthYear = currentYear - birthDetails.year;

    現在の月 >= birthDetails.month の場合 {
        誕生月 = 現在の月 - birthDetails.month;
    }
    それ以外{
        生年月日--;
        誕生月 = 12 + 現在の月 - birthDetails.month;
    }

    現在の日付 >= birthDetails.date の場合 {
        birthDate = currentDate - birthDetails.date;
    }
    それ以外{
        生年月日--;
        days = months[currentMonth - 2]とします。
        birthDate = 日数 + currentDate - birthDetails.date;
        生年月日が0未満の場合
            誕生月 = 11;
            生年月日--;
        }
    }
    displayResult(生年月日、生年月日、生年月日);
}

関数 displayResult(bDate,bMonth,bYear){
    document.getElementById("years").textContent = bYear;
    document.getElementById("months").textContent = bMonth;
    document.getElementById("days").textContent = bDate;
}

関数leapChecker(年){
    if(年 % 4 == 0 || (年 % 100 == 0 && 年 % 400 == 0)){
        月[1] = 29;
    }
    それ以外{
        月[1] = 28;
    }
}

デモアドレス

http://haiyong.site/年齢計算機

上記は、HTML + JS に基づくシンプルな年齢計算機の詳細です。HTML JS 年齢計算機の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • ネイティブ JavaScript を使用した Web 計算機の実装
  • JavaScriptで計算機機能を実現するプロセスの詳細な説明
  • JavaScriptはシンプルな計算機能を実装します
  • 計算機機能を実現するjsバージョン
  • シンプルな計算機を実装するためのネイティブ js
  • JavaScript で簡単な計算機を実装する
  • JavaScript を使用した Web 計算機の作成
  • JavaScript の例 - 計算機の実装

<<:  HTMLドロップダウンメニューを送信した後、デフォルト値に戻るのではなく、選択した値が保持されます。

>>:  Dockerfile 内の予約語命令の解析処理

推薦する

MySql 5.7.17 winx64 のインストールと設定に関する詳細なチュートリアル

1. ソフトウェアをダウンロードする1. MySQL の公式サイトにアクセスし、Oracle アカウ...

ウェブサイトのユーザーエクスペリエンスデザイン(UE)

Google Reader で、JunChen が書いた「フロー理論と設計」というタイトルの投稿を見...

MySQL SELECT文の実行方法

MySQL Select ステートメントはどのように実行されますか?最近、Geek Time で D...

ゲームの Node.JS バージョンを作成する方法

目次概要ビルドプロセス関連APIリードライン基本的な使い方チョーククリア手順に関する追加情報完全なコ...

el-table のテーブルを最適化するために仮想リストを使用する方法についての簡単な説明

目次序文解決具体的な実装満たすべき前提条件質問序文テーブルをよく使用します。データ量が多い場合は直接...

Ubuntu16.04はphp5.6ウェブサーバー環境を構築します

Ubuntu 16.04 はデフォルトで PHP7.0 環境をインストールしますが、PHP7 は一部...

Win10 システムに MySQL8.0.13 をインストールする際の問題と解決策

オペレーティングシステム: Windows10 MySQL バージョン: 8.0.13-winx64...

Vue でフルスクリーンを実装し、フルスクリーン終了を監視する

目次序文:実装手順:完全なソースコード:詳細情報:序文: vueでは、デフォルトページを実装し、di...

WeChatアプレットはふるいを振る効果を実現

この記事では、WeChatアプレットの具体的なコードを参考までに共有します。具体的な内容は次のとおり...

CentOS7でFTPサーバーを設定する方法

FTP は主にファイル転送に使用され、Linux では vsftpd で実装されるのが一般的です。F...

Dockerに証明書を追加する方法

1. アップグレードプロセス: sudo apt-get updateパッケージが見つからない、パッ...

Vueコンポーネントの基本のまとめ

コンポーネントの基本1 コンポーネントの再利用コンポーネントは再利用可能な Vue インスタンスです...

CSS 位置固定左と右の二重配置実装コード

CSS 位置position 属性は、要素の配置タイプを指定します。位置プロパティには 5 つの値が...

JS を使用してバイナリ ツリー トラバーサル アルゴリズムのサンプル コードを実装する

目次序文1. バイナリツリー1.1. 二分木の走査1.2. jsを使用してバイナリツリーを表現する1...