随机div数组在2秒内变化

时间:2013-02-13 05:13:41

标签: javascript random

嗨,我有这个代码,任何人都知道如何在2秒内更改这个随机关键字,

function shuffle(a, b) {
  return Math.random() > 0.5 ? -1 : 1;

}

var keywords = ["<div>1</div>", "<div>2</div>", "<div>3</div>", "<div>4</div>", "<div>5</div>", "<div>6</div>", "<div>7</div>", "<div>8</div>", "<div>9</div>", "<div>10</div>", "<div>11</div>", "<div>22</div>", "<div>44</div>", "<div>32</div>", "<div>46</div>"];
var randomKeywords = keywords.sort(shuffle);


function luckcricket() {
  document.write(randomKeywords);
  alert('laad');
}


luckcricket();

请更正我的代码。在这段代码中,我无法看到任何div在2秒内随机变化

3 个答案:

答案 0 :(得分:2)

您需要添加Timer,

window.setInterval(function() {
// your logic goes here
}, 2000);

每2秒你的逻辑就会被执行。您可以将代码更改为此处的随机密钥

<强>已更新
应该是这样的

var keywords = ["<div>1</div>", "<div>2</div>", "<div>3</div>", "<div>4</div>", 
        "<div>5</div>", "<div>6</div>", "<div>7</div>", "<div>8</div>", 
        "<div>9</div>", "<div>10</div>", "<div>11</div>", "<div>22</div>", 
        "<div>44</div>", "<div>32</div>", "<div>46</div>"];


function luckcricket() {
    var randomKeywords = keywords.sort(shuffle); 
    document.write(randomKeywords); 
    alert('laad'); 
}

function shuffle(a, b) { 
    return Math.random() > 0.5 ? -1 : 1; 
}

window.setInterval(luckcricket, 2000);

答案 1 :(得分:0)

使用window.setInterval以这种方式在特定时间后重复函数调用:

$(document).ready(function(){
    window.setInterval(function() {
       luckcricket();
    }, 2000);
});

每2秒钟会调用 luckcricket()功能。

以下是工作演示:http://jsfiddle.net/5NKXK/

答案 2 :(得分:0)

听起来你想要你的div定期洗牌。这种情况不会发生,因为您正在编写randomKeywords,这是您调用luckcricket时的数组。您要做的是从luckcricket()内调用随机播放或执行document.write(keywords.sort(shuffle))

function shuffle(a, b) {
  return Math.random() > 0.5 ? -1 : 1;

}

var keywords = ["<div>1</div>", "<div>2</div>", "<div>3</div>", "<div>4</div>", "<div>5</div>", "<div>6</div>", "<div>7</div>", "<div>8</div>", "<div>9</div>", "<div>10</div>", "<div>11</div>", "<div>22</div>", "<div>44</div>", "<div>32</div>", "<div>46</div>"];

function luckcricket() {
    // Shift random keywords into callback so it gets updated EVERY TIME
    var randomKeywords = keywords.sort(shuffle);
    document.write(randomKeywords);

    window.setTimeout( function () {
        // Clear after 1 second
        document.body.innerHTML = '';
    }, 1000);
}


luckcricket();
window.setInterval(luckcricket, 2000);

JSFiddle上的示例: http://jsfiddle.net/rfRzH/