如何使功能多次工作

如何使功能多次工作

var change = function() {
  var elem = document.getElementsByTagName("body");
  var count = 0;
  count++;
  var color = "";
  var colors = ["#ff6051", "#ff9f51", "#ffdf51", "#b6ff51", "#51adff", "#3e65c1", "#6414ef"];
  for (var i = 0; i < colors.length; i++) {
    if (count == i + 1) {
      color = colors[i];
    }
  }
  elem[0].style.backgroundColor = color;
}

<button onclick="change()">Click me</button>





我希望单击按钮时可以更改主体的背景颜色。
但是变量“ count”的数量似乎并没有增加。我该怎么做才能增加数量?

最佳答案

在函数外部声明变量计数,以便每次更新时它都获得全局作用域。
演示

var count = 0;
var change = function() {
  var elem = document.getElementsByTagName("body");

  count++;
  console.log('##count',count);
  var color = "";
  var colors = ["#ff6051", "#ff9f51", "#ffdf51", "#b6ff51", "#51adff", "#3e65c1", "#6414ef"];
  for (var i = 0; i < colors.length; i++) {
    if (count == i + 1) {
      color = colors[i];
    }
  }
  elem[0].style.backgroundColor = color;
}

<button onclick="change()">Click me</button>

关于javascript - 如何使功能多次工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47192933/

10-11 19:27