如何避免;“随机”;在这个jquery函数中?

如何避免;“随机”;在这个jquery函数中?,jquery,random,Jquery,Random,如何避免背景随机变化?我希望它们总是按顺序变化:绿、黄、灰,然后再变绿、黄、灰 你只改变了你的颜色一次。。。您需要使用setInterval来更改它们 $(document).ready(function() { vat t = 0; var colors = ["green", "yellow", "grey"]; setInterval( function(){ $('.change').css("background-color", co

如何避免背景随机变化?我希望它们总是按顺序变化:绿、黄、灰,然后再变绿、黄、灰


你只改变了你的颜色一次。。。您需要使用setInterval来更改它们

$(document).ready(function() {
vat t = 0;
var colors = ["green", "yellow", "grey"];
   setInterval(
         function(){ 
            $('.change').css("background-color", colors[t++]);
            if (t==colors.length) t=0;
         }, 3000);
});

你只改变了你的颜色一次。。。您需要使用setInterval来更改它们

$(document).ready(function() {
vat t = 0;
var colors = ["green", "yellow", "grey"];
   setInterval(
         function(){ 
            $('.change').css("background-color", colors[t++]);
            if (t==colors.length) t=0;
         }, 3000);
});

就像Lelio和Carlos建议的那样,您应该在本地存储中保留一个位置变量,以跟踪颜色变化。 所以代码应该是这样的:

<script>
    $(document).ready(function() {
        let pos = 0
        if(window.localStorage.getItem('pos') == null){
            window.localStorage.setItem('pos', pos);
你增加这个位置

});

像Lelio和Carlos建议的那样,您应该在本地存储器中保留一个位置变量,以跟踪颜色变化。 所以代码应该是这样的:

<script>
    $(document).ready(function() {
        let pos = 0
        if(window.localStorage.getItem('pos') == null){
            window.localStorage.setItem('pos', pos);
你增加这个位置

});

这只会改变你的颜色一次,所以它永远不会将颜色从绿色变为黄色或灰色。您是否尝试在间隔时间内执行此操作?如果您希望添加此功能,以便每次重新加载页面时获得一种不同的颜色,则必须以持久方式保存以前的颜色,以便知道重新加载时的下一步操作。这就是代码作者在数组中使用rand的原因:为了避免保存在cookie、backend或类似的最后一种颜色中,我使用SetInterval添加了一个答案,我假设这是您想要的。如果是在刷新时,您需要将最后一种颜色保存在LocalStorage或Cookie中,并使用该信息确定下一种颜色。这只会更改您的颜色一次,因此它永远不会将颜色从绿色更改为黄色或灰色。您是否尝试在间隔时间内执行此操作?如果您希望添加此功能,以便每次重新加载页面时获得一种不同的颜色,则必须以持久方式保存以前的颜色,以便知道重新加载时的下一步操作。这就是代码作者在数组中使用rand的原因:为了避免保存在cookie、backend或类似的最后一种颜色中,我使用SetInterval添加了一个答案,我假设这是您想要的。如果是刷新,则需要将最后一种颜色保存在LocalStorage或Cookie中,并使用该信息确定下一步要在页面重新加载时使用哪种颜色,而不是在及时的基础上使用。OP希望在页面重新加载时使用,而不是在及时的基础上使用
    });
  </script>