"```markdown
使用JavaScript实现秒表计时器
在本节中,我们将使用JavaScript创建一个简单的秒表计时器。这个计时器将包含开始、停止和重置功能,用户可以通过按钮来控制计时器的操作。
HTML结构
首先,我们需要一个基本的HTML结构,包括显示时间的区域和三个按钮。
<!DOCTYPE html>
<html lang=\"zh\">
<head>
<meta charset=\"UTF-8\">
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">
<title>秒表计时器</title>
<style>
#display {
font-size: 48px;
margin-bottom: 20px;
}
button {
font-size: 20px;
margin: 5px;
}
</style>
</head>
<body>
<div id=\"display\">00:00:00</div>
<button id=\"startBtn\">开始</button>
<button id=\"stopBtn\">停止</button>
<button id=\"resetBtn\">重置</button>
<script src=\"timer.js\"></script>
</body>
</html>
JavaScript代码
接下来,我们需要实现计时器的逻辑。创建一个名为timer.js的JavaScript文件,并添加以下代码:
let timer;
let elapsedTime = 0; // 经过的时间(以毫秒为单位)
const display = document.getElementById('display');
const startBtn = document.getElementById('startBtn');
const stopBtn = document.getElementById('stopBtn');
const resetBtn = document.getElementById('resetBtn');
function updateDisplay() {
const date = new Date(elapsedTime);
const hours = String(date.getUTCHours()).padStart(2, '0');
const minutes = String(date.getUTCMinutes()).padStart(2, '0');
const seconds = String(date.getUTCSeconds()).padStart(2, '0');
display.textContent = `${hours}:${minutes}:${seconds}`;
}
function startTimer() {
if (!timer) {
const startTime = Date.now() - elapsedTime; // 计算开始时间
timer = setInterval(() => {
elapsedTime = Date.now() - startTime; // 更新经过的时间
updateDisplay(); // 更新显示
}, 1000); // 每秒更新
}
}
function stopTimer() {
clearInterval(timer);
timer = null; // 停止计时器
}
function resetTimer() {
stopTimer(); // 停止计时器
elapsedTime = 0; // 重置经过的时间
updateDisplay(); // 更新显示
}
// 添加按钮事件监听器
startBtn.addEventListener('click', startTimer);
stopBtn.addEventListener('click', stopTimer);
resetBtn.addEventListener('click', resetTimer);
代码解释
- HTML部分:包含一个显示区域和三个按钮,分别用于开始、停止和重置计时器。
- JavaScript部分:
let timer;用于存储计时器的引用。let elapsedTime = 0;用于存储经过的时间。updateDisplay()函数负责格式化和更新显示的时间。startTimer()函数开始计时器,使用setInterval每秒更新一次经过的时间。stopTimer()函数停止计时器。resetTimer()函数重置经过的时间并更新显示。- 按钮的事件监听器用于调用对应的函数。
总结
通过以上步骤,我们实现了一个简单的秒表计时器,用户可以通过按钮控制计时器的开始、停止和重置。这是一个很好的练习,可以帮助理解JavaScript的基本操作和DOM操作。