質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

1回答

1204閲覧

HTMLにてカウントダウンタイマーの複数回表示させたい

mozu_enter

総合スコア10

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/05/21 02:29

編集2021/05/21 02:44

HTMLにてカウントダウンタイマーを設置してます。
同じカウントダウンタイマーをページ内に複数回表示させたいのですが、同じコードをコピペしただけではいけないのでしょうか。

初心者の為教えていただけると幸いです。

【html】

<section class="timer"> <div style="text-align:center;"> <span><font size="5"><b>プレゼント応募締切まで</b></font></span><br> </div> <div id="CDT"></div> </section>

【css】

#CDT { width: 100%; text-align: center; font-size: 49px; font-weight: bold; color: #ff0000; font-family: 'Noto Sans JP', sans-serif;} #CDT01 { width: 100%; text-align: center; font-size: 49px; font-weight: bold; color: #ffffff; font-family: 'Noto Sans JP', sans-serif; } .ttl { color: #ffffff; font-size: 28px; font-weight: 600; text-align: center; margin: 0; line-height: 1.5; } .timer { background: #e9e9eb; margin: 5px auto; padding: 5px; }

【js】

function CountdownTimer(elm, tl, mes) { this.initialize.apply(this, arguments); } CountdownTimer.prototype = { initialize: function (elm, tl, mes) { this.elem = document.getElementById(elm); this.tl = tl; this.mes = mes; }, countDown: function () { var timer = ''; var today = new Date(); var day = Math.floor((this.tl - today) / (24 * 60 * 60 * 1000)); var hour = Math.floor(((this.tl - today) % (24 * 60 * 60 * 1000)) / (60 * 60 * 1000)); var min = Math.floor(((this.tl - today) % (24 * 60 * 60 * 1000)) / (60 * 1000)) % 60; var sec = Math.floor(((this.tl - today) % (24 * 60 * 60 * 1000)) / 1000) % 60 % 60; var milli = Math.floor(((this.tl - today) % (24 * 60 * 60 * 1000)) / 10) % 100; var me = this; if ((this.tl - today) > 0) { if (day) timer += '' + day + '日'; if (hour) timer += '' + hour + '時間'; timer += '' + this.addZero(min) + '分' + this.addZero(sec) + '秒'; this.elem.innerHTML = timer; tid = setTimeout(function () { me.countDown(); }, 10); } else { this.elem.innerHTML = this.mes; return; } }, addZero: function (num) { return ('0' + num).slice(-2); } } function CDT() { var tl = new Date('2021/5/31 11:59:59');// ここで日付を指定 var timer = new CountdownTimer('CDT', tl, '終了しました'); timer.countDown(); } function CDT01() { var tl = new Date('2020/5/31 11:59:59');// ここで日付を指定 var timer = new CountdownTimer('CDT01', tl, '終了しました'); timer.countDown(); } window.onload = function () { CDT(); CDT01(); }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2021/05/21 02:39

コードはマークダウンのcode機能にてご提示ください。 また、コンソールのエラー確認してください。
mozu_enter

2021/05/21 02:51

ご指摘ありがとうございます。 code機能があること知りませんでした。修正しました。 エラーとして下記が表示されました。 Uncaught TypeError: Cannot set property 'innerHTML' of null at CountdownTimer.countDown (jquery.min.js:35) at CDT01 (jquery.min.js:52) at window.onload (jquery.min.js:56)
m.ts10806

2021/05/21 02:58

なるほど、nullということは要素が取れてないわけですね。 ただ、現在の今度だとスコープが見えにくいので、コードフォーマット機能など利用してインデントをつけることを強くすすめます。それで見えてくることも多いはずです。
guest

回答1

0

カウンター用のIDと、表示箇所をわければいくつでも設定できるはずです

投稿2021/05/21 03:24

yambejp

総合スコア116724

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問