在网页上显示DOM元素,同时在它们上面循环。

问题描述 投票:0回答:1

我正在做一个登陆页面。我有3个文章元素,每个元素都有属性 "display: none "和一个类 "art"。我想在循环它们的同时显示它们中的每一个。它们应该连续出现:在每次迭代时,前面的元素必须消失,这就是为什么我使用了 var j 在下面的代码中。但是JS代码却在整个循环过程完成后才显示出来。如何处理呢?在这里。https:/codepen.iouser_jacobpenoNjqWGg。.目前,我是这样做的(这是不工作)。

function makeAppear() {
  var j = list.length-1;
  for (var i = 0; i < list.length; i++) {
    list[i].style.setProperty('display', 'block');
    list[j-1].style.setProperty('display', 'none');
  }
}
javascript dom
1个回答
1
投票

在设定的时间间隔内不要把 () 只需写上函数名即可。为了循环,创建一个全局索引,然后先隐藏所有的索引,再显示有索引的索引。

let j=0;
function makeAppear() {
  for (var i = 0; i < list.length; i++) {
    list[i].style.setProperty('display', 'none');
  }
   list[j].style.setProperty('display', 'block'); 
   if(j<2){ j++;}
   else {j=0}
}

setInterval(makeAppear, 2000);
© www.soinside.com 2019 - 2024. All rights reserved.