【问题标题】:Changing background color and text color on refresh刷新时更改背景颜色和文本颜色
【发布时间】:2018-10-11 00:36:12
【问题描述】:

我正在使用一个网站,该网站在刷新时会随机更改 div 的背景颜色。 我有一个工作代码:

var bgcolorlist = ['#FFFFFF', '#000000', '#298ACC', '#B079E0'];

$(function() {
$('#color-change').css({
        background: bgcolorlist[Math.floor(Math.random()*bgcolorlist.length)]
        color: bgcolorlist[Math.floor(Math.random()*bgcolorlist.length)]
});
});

问题是我正在尝试更改文本颜色以匹配当前背景颜色。但是现在使用我当前的代码,背景和文本颜色都会随机变化。如何解决只有 div 的背景颜色随机变化而文本颜色只会复制 div 的当前颜色的问题?

【问题讨论】:

    标签: javascript css background-color


    【解决方案1】:

    您需要为文本颜色创建另一个列表并用适当的颜色填充它。以下是带有示例颜色的列表:

    var textColorList = ['#000000', '#ffffff', '#00ff00', '#ff0000'];
    var bgcolorlist = ['#FFFFFF', '#000000', '#298ACC', '#B079E0'];
    
    $(function() {
      var randomNumber = Math.floor(Math.random()*bgcolorlist.length)
      $('#color-change').css({         
        background: bgcolorlist[randomNumber]
        color: textColorList[randomNumber]
      });
    });
    

    【讨论】:

    • 你为什么在css方法中声明randomNumber
    • @kapreski 谢谢!我犯了多么可怕的错误!!我编辑了答案。
    【解决方案2】:
    var bgcolorlist = ['#FECE1B', '#F1585D', '#3BC2D6', '#A5CE39'];
    
    $(function() {
      var backgroundColor = bgcolorlist[Math.floor(Math.random()*bgcolorlist.length)];
      $('#color-change').css({
            background: backgroundColor 
            color: backgroundColor 
      });
    });
    

    如何从css函数中提取随机颜色?

    【讨论】:

    • 我们什么也看不到...(文本颜色 = 背景颜色)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-25
    • 2012-10-08
    • 1970-01-01
    • 2016-03-20
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    相关资源
    最近更新 更多