【问题标题】:Random color from array on website [duplicate]网站上数组中的随机颜色[重复]
【发布时间】:2016-09-11 21:45:55
【问题描述】:

对代码很陌生。在实现一些代码以随机化我的网站部分的 背景颜色 以根据数组进行更改时遇到了一些麻烦。 找到这段代码:

$(document).ready(function(){
  var colors = ["#4ECDC4","#FF6B6B","#313638","#FFE66D"];                
  var rand = Math.floor(Math.random()*colors.length);           
  $(‘#u97’, ‘#u379’).css("background-color", colors[rand]);
});

“#u97, #u379”是我要更改背景颜色的 div。我在标题中插入带有“脚本”标签的代码,但没有任何反应。还有一个主 CSS 文件可以让 div 从中获取颜色,这会不会干扰某些东西?

【问题讨论】:

  • 首先,选择器在一个没有逗号的字符串中。其次,那些引用看起来非常奇怪......
  • 您的代码中是否包含 jQuery?因为该代码使用它($(document).ready)。如果没有,您可以包含它或寻找纯 JavaScript 代码。
  • 我什至不确定,又是新人。

标签: javascript html css


【解决方案1】:

试试这个:

$(document).ready(function(){
  var colors = ["#4ECDC4","#FF6B6B","#313638","#FFE66D"];                
  var rand = Math.floor(Math.random()*colors.length);           
  $('#u97').css("background-color", colors[rand]);
  $('#u379').css("background-color", colors[rand]);
});

【讨论】:

  • 谢谢,但它似乎不起作用。它应该在每次重新加载时选择不同的颜色,但事实并非如此。
  • 我认为你的兰特并不是每次都不同的东西。您的代码可能会在每次加载页面时重复相同的序列,除非您使用诸如日期时间之类的内容作为种子。
【解决方案2】:

$(document).ready(function(){
  var colors = ["#4ECDC4","#FF6B6B","#313638","#FFE66D"];                
  var rand = function () {
    return Math.floor(Math.random()*colors.length);        
  };
  
  $("#u97, #u379").each(function () {
    $(this).css("background-color", colors[rand()]);
  });
});
div {height: 50px; width: 50px;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="u97"></div><div id="u379"></div>

【讨论】:

    猜你喜欢
    • 2015-01-11
    • 2017-08-09
    • 2013-09-21
    • 2013-02-03
    • 2015-05-25
    • 1970-01-01
    • 2015-04-09
    • 2013-12-31
    相关资源
    最近更新 更多