Javascript 在标记传单地图的弹出窗口中插入多个倒计时
我的目标是在每个弹出标记上显示基于Json(obj.time)的倒计时。 必须在Javascript 在标记传单地图的弹出窗口中插入多个倒计时,javascript,html,json,leaflet,countdown,Javascript,Html,Json,Leaflet,Countdown,我的目标是在每个弹出标记上显示基于Json(obj.time)的倒计时。 必须在 如果我为所有的插入一个倒计时,则该值正在工作,但不具有多个值 我试图将obj[I].id连接到id='demo'以使每个倒计时都有多个id 像这样 然后我用同样的方法处理了这个问题 document.getElementById(“demo”+obj[i].id).innerHTML=hours+“h”+minutes+“m”+seconds+“s” 我收到的错误是uncaughttypeerror:无法读取未定义
如果我为所有的
插入一个倒计时,则该值正在工作,但不具有多个值
我试图将obj[I].id连接到id='demo'以使每个倒计时都有多个id
像这样
然后我用同样的方法处理了这个问题
document.getElementById(“demo”+obj[i].id).innerHTML=hours+“h”+minutes+“m”+seconds+“s”代码>
我收到的错误是uncaughttypeerror:无法读取未定义的at(index):215的属性“id”
这是我的项目您必须在间隔函数中添加一个新循环:
var x = setInterval(function() {
for(var i = 0; i < obj.length; i++){
if(document.getElementById("demo"+obj[i].id)){
// Get today's date and time
var now = new Date().getTime();
// Find the distance between now and the count down date
var distance = new Date(obj[i].time).getTime() - now;
// If the count down is finished, write some text and continue loop
if (distance < 0) {
document.getElementById("demo"+obj[i].id).innerHTML = "EXPIRED";
continue;
}
// 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"+obj[i].id).innerHTML = hours + "h "+ minutes + "m " + seconds + "s ";
}
}
}, 200);
var x=setInterval(函数(){
对于(变量i=0;i
此外,您还可以将间隔设置得更快,如果打开弹出窗口,则计时器显示得更快