当前位置:首页 > JavaScript

js按键实现重置倒计时

2026-01-31 09:58:09JavaScript

js按键实现重置倒计时

使用 JavaScript 实现按键重置倒计时

通过监听键盘事件或按钮点击事件,结合 setIntervalclearInterval 控制倒计时逻辑,以下是具体实现方法。

监听键盘事件重置倒计时

let countdown = 10; // 初始倒计时秒数
let timer = null;

// 开始倒计时函数
function startCountdown() {
  clearInterval(timer); // 清除之前的计时器
  countdown = 10; // 重置倒计时秒数
  updateDisplay();

  timer = setInterval(() => {
    countdown--;
    updateDisplay();
    if (countdown <= 0) {
      clearInterval(timer);
      console.log("倒计时结束");
    }
  }, 1000);
}

// 更新显示内容
function updateDisplay() {
  document.getElementById("countdown-display").textContent = countdown;
}

// 监听键盘按键(例如空格键)
document.addEventListener("keydown", (event) => {
  if (event.code === "Space") {
    startCountdown();
  }
});

// 初始化显示
updateDisplay();

通过按钮点击重置倒计时

<div id="countdown-display">10</div>
<button id="reset-button">重置倒计时</button>

<script>
  let countdown = 10;
  let timer = null;

  function startCountdown() {
    clearInterval(timer);
    countdown = 10;
    updateDisplay();

    timer = setInterval(() => {
      countdown--;
      updateDisplay();
      if (countdown <= 0) {
        clearInterval(timer);
        console.log("倒计时结束");
      }
    }, 1000);
  }

  function updateDisplay() {
    document.getElementById("countdown-display").textContent = countdown;
  }

  document.getElementById("reset-button").addEventListener("click", startCountdown);

  // 初始启动
  startCountdown();
</script>

动态调整倒计时时间

若需通过按键动态调整倒计时时长,可扩展键盘监听逻辑:

document.addEventListener("keydown", (event) => {
  if (event.code === "ArrowUp") {
    countdown += 5; // 按上箭头增加5秒
    updateDisplay();
  } else if (event.code === "ArrowDown") {
    countdown = Math.max(0, countdown - 5); // 按下箭头减少5秒
    updateDisplay();
  }
});

注意事项

  • 使用 clearInterval 确保每次重置前清除旧计时器,避免多个计时器同时运行。
  • 通过 Math.max 限制倒计时最小值,避免出现负数。
  • 键盘事件中建议使用 event.code 而非 event.key,以提高键位识别准确性。

js按键实现重置倒计时

标签: 倒计时按键
分享给朋友:

相关文章

vue实现点击按键

vue实现点击按键

Vue 实现点击按钮的方法 在 Vue 中实现点击按钮功能可以通过 v-on 指令或 @ 简写绑定事件。以下是几种常见实现方式: 直接在模板中绑定方法 <template> <…

react实现倒计时

react实现倒计时

使用 useState 和 useEffect 实现基础倒计时 以下是一个简单的 React 倒计时组件,从指定时间(如 60 秒)开始倒数: import React, { useState…

css 按键制作

css 按键制作

CSS 按键制作方法 制作 CSS 按键通常涉及样式设计、交互效果和动画处理。以下是几种常见的实现方式: 基础按钮样式 通过 CSS 设置按钮的基本样式,包括背景色、边框、圆角等: .button…

css按键制作

css按键制作

制作CSS按键效果 使用CSS可以创建各种按键效果,包括悬停、按下和禁用状态。以下是一些常见的方法和代码示例。 基础按键样式 通过设置背景色、边框和圆角创建基础按键样式: .button {…

css制作按键

css制作按键

CSS制作按键的基础方法 使用CSS制作按键可以通过设置边框、背景色、阴影等属性实现基础样式。以下是一个简单的按键样式代码示例: .button { display: inline-block;…

js图片实现倒计时

js图片实现倒计时

使用 JavaScript 实现图片倒计时 在网页中实现图片倒计时效果,可以通过动态修改图片的 src 属性或结合 CSS 动画来实现。以下是两种常见的方法: 方法一:动态切换图片源 通过 Jav…