如何使用Javascript进行实时产品倒计时
我需要实时倒计时。例如,我将设置一个日期(2020年2月28日),它将在(2020年2月29日)结束。在这两个日期之间,我将设置产品数量。它将不断减少。 所以我希望产品的数量为零 而且, 当不同的用户从不同的计算机输入时,产品的数量应继续保持在他们停止的位置。我不能这么做 我寻找解决办法,但找不到 我需要帮助。。 谢谢你 这是我的js代码如何使用Javascript进行实时产品倒计时,javascript,jquery,timer,countdown,Javascript,Jquery,Timer,Countdown,我需要实时倒计时。例如,我将设置一个日期(2020年2月28日),它将在(2020年2月29日)结束。在这两个日期之间,我将设置产品数量。它将不断减少。 所以我希望产品的数量为零 而且, 当不同的用户从不同的计算机输入时,产品的数量应继续保持在他们停止的位置。我不能这么做 我寻找解决办法,但找不到 我需要帮助。。 谢谢你 这是我的js代码 today = new Date(); BigDay = new Date("February "+day+",2020
today = new Date();
BigDay = new Date("February "+day+",2020");
msPerDay = 24 * 60 * 60 * 1000;
timeLeft = (BigDay.getTime() - today.getTime());
e_daysLeft = timeLeft / msPerDay;
daysLeft = Math.floor(e_daysLeft);
e_hrsLeft = e_daysLeft*24;
hrsLeft = Math.floor(e_hrsLeft);
minsLeft = Math.floor((e_hrsLeft - hrsLeft)*60);
var productCount = 400;
document.write("<p>There are only<b> " + daysLeft + " days " + hrsLeft +" hours and " + minsLeft + " minutes left </b> Until December 25th 2025</p>");
today=新日期();
BigDay=新日期(“2020年2月+日”);
msPerDay=24*60*60*1000;
timeLeft=(BigDay.getTime()-today.getTime());
e_daysLeft=时间间隔/毫秒/天;
daysLeft=数学楼层(e_daysLeft);
e_hrsLeft=e_daysLeft*24;
hrsLeft=数学楼层(e_hrsLeft);
分钟左=数学楼层((e_hrsLeft-hrsLeft)*60);
var productCount=400;
文件。填写(到2025年12月25日为止,只剩下“+daysLeft+”days“+hrsLeft+”小时和“+minsLeft+”分钟);
这里是一个小片段
var productCount=400;
函数倒计时(){
日=28;
今天=新日期();
BigDay=新日期(“2020年2月+日”);
msPerDay=24*60*60*1000;
timeLeft=(BigDay.getTime()-today.getTime());
e_daysLeft=时间间隔/毫秒/天;
daysLeft=数学楼层(e_daysLeft);
e_hrsLeft=e_daysLeft*24;
hrsLeft=数学楼层(e_hrsLeft);
分钟左=数学楼层((e_hrsLeft-hrsLeft)*60);
document.getElementById('output').innerHTML=“到2025年12月25日,只剩下“+daysLeft+”天“+hrsLeft+”小时和“+minsLeft+”分钟”;
}
//拜访起点
倒计时
setInterval(function(){countdown();productCount-=1;},60000)//每1分钟后自动计时一次
函数更新程序(){
future=Date.parse(“2020年2月29日11:30:00”);
现在=新日期();
diff=未来-现在;
天数=数学下限(差值/(1000*60*60*24));
小时=数学楼层(差值/(1000*60*60));
分钟=数学楼层(差值/(1000*60));
秒=数学楼层(差异/1000);
d=天;
h=小时-天*24;
m=分钟-小时*60;
s=秒-分钟*60;
document.getElementById(“计时器”)
.innerHTML=
''+d+'天'+
''+h+'小时'+
''+m+'分钟'+
''+s+'秒';
}
setInterval('updateTimer()',1000)代码>
正文{
文本对齐:居中;
填充:70px 50px;
背景#0D1A29;
字体系列:“Helvetica Neue”、“Open Sans”、Helvetica、arial、Sans serif;
}
#计时器{
字号:3em;
字号:100;
颜色:白色;
文本阴影:0 0 20px#48C8FF;
div{
显示:内联块;
最小宽度:90px;
跨度{
颜色:#B1CDF1;
显示:块;
字体大小:.35em;
字体大小:400;
}
}
}
这是一个shippet,其中包含了vars和用于构建的函数
const day = 28;
const BigDay = new Date("February "+day+",2020");
const BigDayTime = BigDay.getTime();
const msPerDay = 24 * 60 * 60 * 1000;
const productCount = 400;
const getLeftTimeObject = () => {
const today = new Date();
const timeLeft = BigDayTime - today.getTime();
const e_daysLeft = timeLeft / msPerDay;
const daysLeft = Math.floor(e_daysLeft);
const e_hrsLeft = e_daysLeft*24;
const hrsLeft = Math.floor(e_hrsLeft);
const minsLeft = Math.floor((e_hrsLeft - hrsLeft)*60);
return {
days: daysLeft,
hours: hrsLeft,
minutes: minsLeft
}
}
const setCounter = () => {
const { days, hours, minutes } = getLeftTimeObject();
const counterContainer = document.querySelector(.'counter-container');
if(counterContainer) {
document.querySelector('.counter-container .days').innerHTML = days;
document.querySelector('.counter-container .hours').innerHTML = hours;
document.querySelector('.counter-container .minutes').innerHTML = minutes;
} else {
document.write(
`
<p class="counter-container">
There are only
<b><span class="days">${days}</span> days<b>
<b><span class="hours">${hours}</span> hours and<b>
<b><span class="minutes">${minutes}</span> minutes left<b>
Until February ${day}th 2020
</p>
`
);
}
}
setInterval(() => {
setCounter();
}, productCount)
常数日=28;
const BigDay=新日期(“2020年2月+日”);
const BigDay=BigDay.getTime();
常数msPerDay=24*60*60*1000;
const productCount=400;
常量getLeftTimeObject=()=>{
const today=新日期();
const timeLeft=bigdayer-today.getTime();
const e_daysLeft=timeLeft/msPerDay;
const daysLeft=数学楼层(e_daysLeft);
常数e_hrsLeft=e_daysLeft*24;
const hrsLeft=数学楼层(e_hrsLeft);
const minsLeft=数学楼层((e_hrsLeft-hrsLeft)*60);
返回{
days:daysLeft,
小时:hrsLeft,
分钟:左分钟
}
}
常量setCounter=()=>{
常量{days,hours,minutes}=getLeftTimeObject();
const counterContainer=document.querySelector(.'counter-container');
if(反容器){
document.querySelector('.counter container.days')。innerHTML=days;
document.querySelector('.counter container.hours')。innerHTML=hours;
document.querySelector('.counter container.minutes')。innerHTML=minutes;
}否则{
document.write(
`
只有
${days}天
${hours}小时和
还剩${minutes}分钟
至2020年2月${day}
`
);
}
}
设置间隔(()=>{
setCounter();
},productCount)
我知道了。它起作用了,但有一个问题是这样的,当不同的用户从不同的计算机输入时,产品的数量应该继续保持在他们停止的位置。我无法做到这一点。为此,您需要每次调用product
count fromdb