javascript - 随机背景颜色 : is it possible for colour to be different for every click?

标签 javascript

我的背景在每次单击按钮时都会随机改变颜色。是否可以保证每次点击的颜色都不同(避免连续2-3次生成相同颜色的可能性)? .js 文件的源代码如下(HTML 基本上只是按钮)。

var bgcolorlist, btn;
function newColor() {
    bgcolorlist = '#'+Math.floor(Math.random()*16777215).toString(16);
    document.body.style.backgroundColor = bgcolorlist;
}
function initAll() {
    btn = document.getElementById('click1');
    btn.addEventListener('click', newColor, false);
}
initAll();

最佳答案

尝试以下操作:

var bgcolorlist, btn;
var colorList = [];
function newColor() {
  bgcolorlist = '#'+Math.floor(Math.random()*16777215).toString(16);
  while(colorList.indexOf(bgcolorlist) != -1){
    bgcolorlist = '#'+Math.floor(Math.random()*16777215).toString(16);
  }
  colorList.push(bgcolorlist);
  document.body.style.backgroundColor = bgcolorlist;
}
function initAll() {
  btn = document.getElementById('click1');
  btn.addEventListener('click', newColor, false);
}
initAll();

关于javascript - 随机背景颜色 : is it possible for colour to be different for every click?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38965568/

相关文章:

javascript - 无法对不在 DOM 中的 Metamorph 执行操作

javascript - jQuery Vmap 刷新与函数加载

javascript - node.js 会编译 JavaScript 吗?

javascript - 在ajax函数中返回更少

html 上的 Javascript settimeouts 打地鼠游戏

javascript - 多次重复一组方法的设计模式

javascript - RSA 加密 : reproducing JS behaviour with PHP

javascript - 带有类选择的 Css 选择器不起作用

javascript - 使用 IE 和 SSL 编写 Dojo

javascript - 如何向进度条添加条纹或斜线?