使用JavaScript和HTML表单按钮实现当前时间的开始和暂停

本文展示了如何使用HTML创建输入框和按钮,结合JavaScript实现动态显示和更新当前实时时间的功能。通过DOM获取元素,设置开始和暂停按钮的点击事件,以及使用setInterval和clearInterval控制时间的显示与停止。
摘要由CSDN通过智能技术生成

HTML

首先写三个input表单元素,分别为输入框、开始按钮、暂停按钮,并为其赋予一个id属性

<input type="text" id="in_time">
<input type="button" value="开始" id="start">
<input type="button" value="暂停" id="stop">

JavaScript 

实现步骤:

  1. 首先使用dom通过其id属性查找到html中的三个表单元素
  2. 定义一个显示当前实时时间的函数
  3. 在时间函数中创建一个时间对象并获取当前时间
  4. 在时间函数中为input输入框赋一个value属性,并且让value的属性值等于所获取到的当前时间
  5. 调用函数
  6. 声明一个全局变量t用来存放计时器
  7. 为开始按钮绑定一个点击事件,在这个点击事件中写一个对布尔值取反的操作if(!t){执行内容}--表示当变量名t的值为假时执行{}中的内容,防止双击开始按钮后不能进行暂停操作
  8. 为暂停按钮绑定一个点击事件在这个点击事件中通过clearInterval(t)来进行清除计时器,还要写一个t=""的语句表示将t变成一个空字符串,防止点击暂停按钮后不能进行开始操作

代码演示:

<script>
    //DOM查找获取到input框、开始、暂停按钮
	var inEle = document.getElementById("in_time");
    var startEle = document.getElementById("start");
    var stopEle = document.getElementById("stop");
    //显示当前实时时间函数
    function showTime() {
        //时间对象
	    var date_obj = new Date();
        //获取当前时间
	    var now_time = date_obj.toLocaleString();
        //为input输入框赋一个value属性,并且值等于所获取的当前时间
	    inEle.value = now_time;
    }
    //调用函数
    showTime();
    //全局变量t用来存放计时器
	var t;
    //为开始按钮绑定点击事件
    startEle.onclick=function (){
        //对布尔值进行取反操作,表示当变量t的值为假时执行{}中的内容
        if (!t){
            //当点击开始按钮时通过计时器每1秒刷新一次数据
            t=setInterval(showTime,1000);
        }
    };
    //为暂停按钮绑定点击事件
    stopEle.onclick=function () {
        //当点击stop按钮时清除变量t中的计时器
	    clearInterval(t);
	    //将变量t变成一个空字符串,防止点击暂停按钮后不能进行开始操作
	    t="";
    }
</script>

效果:

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以通过以下步骤来实现时间的开始和暂停: 1. 首先创建一个表单,包含开始按钮暂停按钮和显示时间的区域。例如: ```html <form> <label for="timer">计时器:</label> <span id="timer">00:00:00</span> <br> <button id="startBtn" type="button">开始</button> <button id="pauseBtn" type="button">暂停</button> </form> ``` 2. 在 JavaScript 中,定义一个计时器变量和一个开始时间变量。例如: ```javascript var timer = null; var startTime = null; ``` 3. 给开始按钮暂停按钮添加点击事件监听器。开始按钮点击后,记录下开始时间并启动计时器;暂停按钮点击后,停止计时器。例如: ```javascript var startBtn = document.getElementById('startBtn'); var pauseBtn = document.getElementById('pauseBtn'); startBtn.addEventListener('click', function() { startTime = new Date(); timer = setInterval(updateTimer, 1000); }); pauseBtn.addEventListener('click', function() { clearInterval(timer); }); function updateTimer() { var currentTime = new Date(); var elapsed = currentTime - startTime; var hours = Math.floor(elapsed / 3600000); var minutes = Math.floor((elapsed - hours * 3600000) / 60000); var seconds = Math.floor((elapsed - hours * 3600000 - minutes * 60000) / 1000); var timeString = padZero(hours) + ':' + padZero(minutes) + ':' + padZero(seconds); document.getElementById('timer').textContent = timeString; } function padZero(num) { return num < 10 ? '0' + num : num; } ``` 4. 最后,定义一个函数用于在显示时间的区域中更新计时器的值。该函数需要计算出已经过去的时间,并将其转换为小时、分钟和秒钟。然后将这些值格式化为字符串,并在显示时间的区域中更新。注意,我们还需要一个辅助函数,用于在数字小于 10 时在其前面添加零。 以上就是用 JavaScript 实现时间的开始和暂停的基本步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值