Javascript 单元格表上的多个倒计时计时器
我正在尝试制作一个2列的表格单元格,右边是倒计时,左边是标题,我只知道如何为一个单元格倒计时,但我需要为所有单元格设置多个倒计时 所以我可以在右边键入一个日期,javascript会让它倒计时,直到到达该日期。 我唯一能做的就是一个倒计时计时器,它也有一个ID,但我不知道如何在多个计时器上设置它 每列上的日期将不同 下面是javascript代码Javascript 单元格表上的多个倒计时计时器,javascript,html,timer,Javascript,Html,Timer,我正在尝试制作一个2列的表格单元格,右边是倒计时,左边是标题,我只知道如何为一个单元格倒计时,但我需要为所有单元格设置多个倒计时 所以我可以在右边键入一个日期,javascript会让它倒计时,直到到达该日期。 我唯一能做的就是一个倒计时计时器,它也有一个ID,但我不知道如何在多个计时器上设置它 每列上的日期将不同 下面是javascript代码 // Set the date we're counting down to var countDownDate = new Date("D
// Set the date we're counting down to
var countDownDate = new Date("Dec 10, 2020 21:41:25").getTime();
// Update the count down every 1 second
var x = setInterval(function() {
// Get today's date and time
var now = new Date().getTime();
// Find the distance between now and the count down date
var distance = countDownDate - now;
// Time calculations for days, hours, minutes and seconds
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
// Display the result in the element with id="demo"
document.getElementById("demo").innerHTML = days + "d " + hours + "h "
+ minutes + "m " + seconds + "s ";
// If the count down is finished, write some text
if (distance < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "DROPPED";
}
}, 1000);
</script>
and heres the html code
<html>
<head>
</head>
<body>
<table style="width:600px">
<tr>
<th>TEXT</th>
<th>COUNTDOWN</th>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td id="demo"></td>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td>DATE</td>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td> DATE </td>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td>DATE</td>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td>DATE</td>
</tr>
<tr>
<td><a href="www.google.com">TBA</a></td>
<td> DATE</td>
</tr>
</table>
</body>
</html>
Kind regards.
//设置我们倒计时的日期
var countDownDate=新日期(“2020年12月10日21:41:25”).getTime();
//每1秒更新一次倒计时
var x=setInterval(函数(){
//获取今天的日期和时间
var now=new Date().getTime();
//找出现在和倒计时日期之间的距离
var距离=倒计时日期-现在;
//天、小时、分钟和秒的时间计算
变量天数=数学楼层(距离/(1000*60*60*24));
可变小时数=数学楼层((距离%(1000*60*60*24))/(1000*60*60));
var分钟=数学楼层((距离%(1000*60*60))/(1000*60));
var秒=数学楼层((距离%(1000*60))/1000);
//使用id=“demo”在元素中显示结果
document.getElementById(“demo”).innerHTML=days+d+hours+h
+分钟+米+秒+秒;
//如果倒计时结束,写一些文字
如果(距离<0){
净间隔(x);
document.getElementById(“demo”).innerHTML=“已删除”;
}
}, 1000);
这是html代码
正文
倒计时
日期
日期
日期
日期
日期
亲切的问候。
您可以为每个字段指定一个类,并使用querySelectorAll
查找所有这些字段,然后应用事件侦听器侦听更改事件
除此之外,代码与您的代码几乎相同(除了使用.value
而不是.innerHTML
设置字段的值)
免责声明:不验证您键入的日期是否有效
document.queryselectoral(“.countdown”).forEach(cd=>{
设置倒计时(cd)
})
功能设置倒计时(字段){
field.addEventListener(“更改”,函数(){
field.disabled=true
var countDownDate=新日期(field.value).getTime();
console.log(倒计时日期)
var x=setInterval(函数(){
//获取今天的日期和时间
var now=new Date().getTime();
//找出现在和倒计时日期之间的距离
var距离=倒计时日期-现在;
//天、小时、分钟和秒的时间计算
变量天数=数学楼层(距离/(1000*60*60*24));
可变小时数=数学楼层((距离%(1000*60*60*24))/(1000*60*60));
var分钟=数学楼层((距离%(1000*60*60))/(1000*60));
var秒=数学楼层((距离%(1000*60))/1000);
//显示结果
field.value=天+天+小时+小时+分钟+米+秒+秒;
//如果倒计时结束,写一些文字
如果(距离<0){
净间隔(x);
field.value=“已删除”;
}
}, 1000);
})
}
正文
倒计时
此示例信息取自阵列,并定向到具有演示ID和序列号的项目
在数组中输入日期、链接和标题。计时器本身将被添加到表中
在JS中,我添加了一个检查,如果剩余天数为0,则会添加一个班级。endsoon也会添加一个毕业生班级
在css中,我设置值来对表格进行基本样式化,以便字段在倒计时期间不会移动
编辑:创建表时,函数checkDate()
检查日期。如果日期已过,则不会将其添加到表中
时间到期后,“已删除”字样将保留5分钟,之后将删除该表的这一行。可以在代码var remAft=5中从此行更改时间代码>
var-arr=[
//日期链接标题
['Dec10202023:26:25','www.google.com','TBA'],
['Dec820021:41:25','www.google.com','TBA'],
['Dec10202021:41:25','www.google.com','TBA'],
['Dec11202021:41:25','www.google.com','TBA'],
[2021年1月15日21:41:25',www.google.com',TBA'],
['Dec2021211:41:25','www.google.com','TBA']
];
//5分钟后取出
风险价值剩余=5;
//获取ID为“timer”的元素
var wrap=document.querySelector(“#timer tbody”);
//用于循环数组“arr”
对于(变量i=0;i-60*1000*remAft){return true;}否则{return false;}
}
功能myTimers(tim、ele){
//确定我们倒计时的日期
var countDownDate=新日期(tim).getTime();
//每1秒更新一次倒计时
var x=设定间隔