首页 > 解决方案 > 是 setInterval 减慢我的网站

问题描述

我想知道是否会setInterval减慢我的网站速度?

setInterval(function(){
    var uploadbtndiv = document.getElementById("imagesmaindiv");
    if (uploadbtndiv.childElementCount == 1) {
          document.getElementsByClassName("plusupload")[0].style.top = "17px";
    }else{
          document.getElementsByClassName("plusupload")[0].style.top = "-81px";
    }

}, 10);

标签: javascriptsetinterval

解决方案


setInterval不会减慢您的网站速度。使用不当可以。在您的代码中,您安排大约每 10 毫秒发生一次操作。好多啊。即使是每秒执行 100 次的高效操作(您的操作也相当高效,尽管它可能更高效)也可以加起来。

您可能不希望setInterval在您的示例中。您似乎想根据imagesmaindiv. 我可能会以三种不同的方式之一来做到这一点:

  • 通过将if/放入else向/从中添加/删除元素的代码中imagesmaindiv
  • 通过使用 CSS,但这取决于结构
  • 通过在 上使用突变观察imagesmaindiv,所以我只在其内容更改而不是每秒 100 次时才进行工作

推荐阅读