この記事では、カレンダー効果を素早く実現するためのJavaScriptの具体的なコードを例として紹介します。具体的な内容は次のとおりです。 レンダリング コード <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta http-equiv="X-UA-compatible" content="IE=edge"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <title>ドキュメント</title> <スタイル> * { マージン: 0; パディング: 0; } #カレンダー{ 背景色: #9900ff; 色: #fff; 境界線の半径: 5px; マージン: 100px 自動; } #タイトル { フォントサイズ: 1.4em; パディング: 4px 0.55em; } #日 th { フォントの太さ: 太字; テキスト配置: 中央; パディング: 4px 0.55em; } #カレンダー td { テキスト配置: 中央; パディング: 4px 20px; } #今日 { 色: #f00; フォントの太さ: 太字; } .ポイント{ カーソル: ポインタ; カーソル: 手; } </スタイル> <スクリプト> window.onload = 関数(){ var フォーム = document.getElementById('カレンダー'); //カレンダー オブジェクト独自の init メソッドを呼び出します。calendar.init(form); } var カレンダー = { 年: null、 月: null、 //日付配列 dayTable: null, // 初期化関数 init(form) { // 1 日の配列を取得します。this.dayTable=form.getElementsByTagName('td'); //2 カレンダーを作成し、現在の時刻を渡します this.createCalendar(form,new Date()); var nextMon=form.getElementsByTagName('th')[2]; var preMon=form.getElementsByTagName('th')[0]; preMon.onclick=関数(){ カレンダー.clearCalendar(フォーム) var preDate = new Date (calendar.year,calendar.month-1,1); カレンダー.createCalendar(フォーム、preDate) } nextMon.onclick=関数(){ カレンダー.clearCalendar(フォーム) var nextDate=新しい日付(calendar.year、calendar.month+1、1); カレンダー.createCalendar(フォーム、次の日付) } }, // カレンダーデータをクリアする clearCalendar(form) { var tds = form.getElementsByTagName('td'); (var i = 0; i < tds.length; i++) の場合 { tds[i].innerHTML=' '; // 今日のスタイルをクリア tds[i].id=''; } }, // 3 カレンダーを生成する // テーブル date から作成する日付 createCalendar(form,date){ //現在の年を取得します。this.year=date.getFullYear(); //現在の月を取得します。this.month=date.getMonth(); //カレンダーフォームに年と月を書き込みます。getElementsByTagName('th')[1].innerHTML = this.year+"年"+(this.month+1)+"月"; //今月の日数を取得します var dataNum=this.getDateLen(this.year,this.month); var firstDay = this.getFristDay(calendar.year,calendar.month); // ループして各日の数字をカレンダーに書き込みます // i で日付を表します。 (var i = 1; i <= dataNum; i++) の場合 { this.dayTable[fristDay+i-1].innerHTML=i; var nowDate =新しい日付(); if(i == nowDate.getDate() && calendar.month == nowDate.getMonth() && calendar.year == nowDate.getFullYear()){ // 現在の要素の ID を今日に設定する calendar.dayTable[i+fristDay-1].id = "今日"; } } }, // 今月の日数を取得する getDateLen(year,month){ //次の月の最初の日を取得します。var nextMonth=new Date(year,month+1,1); // 翌月の最初の日の時間を、前月の最終日の時間から 1 引いた値に設定します。24 時間を超えない値を減算します nextMonth.setHours(nextMonth.getHours()-1); //前月の最終日である翌月の日付を取得します。 nextMonth.getDate() を返します。 }, // 月の最初の日を取得します。 getFristDay:関数(年,月){ var firstDay=新しい日付(年,月,1); firstDay.getDay() を返します。 } } </スクリプト> </head> <本文> <テーブル id="カレンダー"> <tr> <!-- 左矢印 --> <th class="poin"><<</th> <!-- 年 月 --> <th id="title" colspan="5"></th> <!-- 右矢印 --> <th class="poin">>></th> </tr> <tr id="日"> <th>日</th> <th>一</th> <th>2</th> <th>3</th> <th>4</th> <th>5</th> <th>6</th> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> </テーブル> </本文> </html> 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: Linux システムで HugePages をすばやく構成するための完全な手順
この記事では、CSS3 を使用した Web サイトの商品表示の効果を紹介し、皆さんと共有します。詳細...
HTML ドキュメント内の要素は次々に配置され、ブロックレベル要素の前後に改行が追加されるだけで、合...
JavaScriptで格納可能なセカンダリメニューを実装するための具体的なコードは参考までに。具体...
前回のブログでは、Nginx と httpd を使用して、逆生成用のバックエンド Tomcat サー...
1. はじめにバージョン 5.0 以降でサポートされています。特定の機能を実行するための SQL ス...
目次序文エラー境界エラー境界を超えてトライ/キャッチwindow.onerror、エラーイベント未処...
目次セットは値が重複しない特別なコレクションです。セットコレクション基本API独自の価値判断セットを...
GROUP BY 句と HAVING 句を紹介する前に、まず SQL 言語の特殊な関数である集計関数...
目次質問1件2つの方法3 実験結果と考察質問1件ご存知のとおり、 Pycharm 、 IDLE 、 ...
この記事では、カルーセルの効果を実現するためのJavaScriptの具体的なコードを参考までに共有し...
MySQL を自分でインストールするのに 3 時間かかりました。チュートリアルはたくさんあるにもかか...
この記事では、MySQL 8.0.15 winx64のインストールと設定方法を参考までに紹介します。...
目次1. 背景2. 前提条件https:証明書システム: 3. 操作プロセス3.1 証明書の生成3....
目次1. Tomcat の概念–1、サーバー–2、ウェブサーバー–3、Tomcatサーバー次にTom...
docker によってプルされたコマンドは、デフォルトでは /var/lib/docker/ フォル...