「画面切り替えでカウントダウンタイマーを作成」の方法はこちら

📖 目次
  1. 方法1: HTMLとCSSを使用する
  2. 方法2: JavaScriptを使用する
  3. 方法3: JavaScriptフレームワークを使用する

方法1: HTMLとCSSを使用する

画面切り替えでカウントダウンタイマーを作成するための最も基本的な方法は、HTMLとCSSを使用することです。HTMLでタイマーの要素を作成し、CSSでスタイリングを行います。

まず、HTMLでカウントダウンタイマーの要素を作成します。以下のコードを使用して、div要素を作成し、その中に時間を表示するためのspan要素を追加します。


<div id="timer">
  <span id="hours">00</span>:
  <span id="minutes">00</span>:
  <span id="seconds">00</span>
</div>

次に、CSSでタイマーのスタイリングを行います。以下のコードを使用して、タイマーの要素にスタイルを適用します。


#timer {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}

#timer span {
  padding: 10px;
  background-color: #f1f1f1;
  border-radius: 5px;
}

#timer span:not(:last-child) {
  margin-right: 5px;
}

これで、HTMLとCSSを使用して画面切り替えでカウントダウンタイマーを作成する準備が整いました。

方法2: JavaScriptを使用する

HTMLとCSSだけでは、カウントダウン機能を実装することはできません。JavaScriptを使用して、タイマーのカウントダウン機能を追加する必要があります。

以下のコードを使用して、JavaScriptでカウントダウン機能を実装します。


// タイマーの要素を取得
var hoursElement = document.getElementById("hours");
var minutesElement = document.getElementById("minutes");
var secondsElement = document.getElementById("seconds");

// タイマーの初期値を設定
var hours = 1;
var minutes = 30;
var seconds = 0;

// タイマーを更新する関数
function updateTimer() {
  // 残り時間を表示
  hoursElement.textContent = hours.toString().padStart(2, "0");
  minutesElement.textContent = minutes.toString().padStart(2, "0");
  secondsElement.textContent = seconds.toString().padStart(2, "0");

  // 1秒減らす
  seconds--;

  // 秒が0になったら分を減らす
  if (seconds < 0) {
    seconds = 59;
    minutes--;
  }

  // 分が0になったら時間を減らす
  if (minutes < 0) {
    minutes = 59;
    hours--;
  }

  // タイマーが0になったら停止
  if (hours === 0 && minutes === 0 && seconds === 0) {
    clearInterval(timerInterval);
    alert("タイマーが終了しました");
  }
}

// 1秒ごとにタイマーを更新
var timerInterval = setInterval(updateTimer, 1000);

これで、JavaScriptを使用して画面切り替えでカウントダウンタイマーを作成することができます。

方法3: JavaScriptフレームワークを使用する

さらに高度なカウントダウンタイマーを作成する場合は、JavaScriptフレームワークを使用することをおすすめします。フレームワークを使用することで、より効率的にタイマーを管理することができます。

代表的なJavaScriptフレームワークとしては、ReactやVue.jsなどがあります。これらのフレームワークを使用すると、コンポーネントベースの開発が可能になり、再利用性や保守性が向上します。

以下は、Vue.jsを使用してカウントダウンタイマーを作成する例です。


<div id="app">
  <timer :hours="1" :minutes="30" :seconds="0"></timer>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
Vue.component('timer', {
  props: ['hours', 'minutes', 'seconds'],
  data() {
    return {
      remainingHours: this.hours,
      remainingMinutes: this.minutes,
      remainingSeconds: this.seconds
    };
  },
  mounted() {
    this.timerInterval = setInterval(this.updateTimer, 1000);
  },
  methods: {
    updateTimer() {
      this.remainingSeconds--;

      if (this.remainingSeconds < 0) {
        this.remainingSeconds = 59;
        this.remainingMinutes--;
      }

      if (this.remainingMinutes < 0) {
        this.remainingMinutes = 59;
        this.remainingHours--;
      }

      if (this.remainingHours === 0 && this.remainingMinutes === 0 && this.remainingSeconds === 0) {
        clearInterval(this.timerInterval);
        alert("タイマーが終了しました");
      }
    }
  },
  template: `
    <div>
      <span>{{ remainingHours.toString().padStart(2, "0") }}</span>:
      <span>{{ remainingMinutes.toString().padStart(2, "0") }}</span>:
      <span>{{ remainingSeconds.toString().padStart(2, "0") }}</span>
    </div>
  `
});

new Vue({
  el: '#app'
});
</script>

これで、JavaScriptフレームワークを使用して画面切り替えでカウントダウンタイマーを作成することができます。

関連ブログ記事 :  先頭行に複数の同じ項目名がある表をPower Queryでテーブルに変換する方法

関連ブログ記事

コメントを残す

Go up