Javascript Jquery每秒选择一个随机单元格

Javascript Jquery每秒选择一个随机单元格,javascript,jquery,html,Javascript,Jquery,Html,我正在寻找一种方法来选择一个div的六个十几岁,其中一个需要改变它的CSS背景。它还需要每秒发生一次,因此每秒都会从其他div中选择一个新div 我被困在每一个第二部分,这是我拥有的部分(不是自制的): 我的HTML代码: <div id="content"> <h1>Random plaatjes</h1> <div class="pics"> <div class="heading">

我正在寻找一种方法来选择一个div的六个十几岁,其中一个需要改变它的CSS背景。它还需要每秒发生一次,因此每秒都会从其他div中选择一个新div

我被困在每一个第二部分,这是我拥有的部分(不是自制的):

我的HTML代码:

<div id="content">
    <h1>Random plaatjes</h1>
        <div class="pics">
            <div class="heading">
                <div class="cell" id="cell">
                Plaatjes 1
                </div>
                <div class="cell" id="cell">
                Plaatjes 2
                </div>
                <div class="cell" id="cell">
                Plaatjes 3
                </div>
                <div class="cell" id="cell">
                Plaatjes 4
                </div>
            </div>
            <div class="row">
                <div class="cell" id="cell">
                Plaatje 1
                </div>
                <div class="cell" id="cell">
                Plaatje 2
                </div>
                <div class="cell" id="cell">
                Plaatje 3
                </div>
                <div class="cell" id="cell">
                Plaatje 4
                </div>
            </div>
            <div class="row">
                <div class="cell" id="cell">
                Plaatje 1
                </div>
                <div class="cell" id="cell">
                Plaatje 2
                </div>
                <div class="cell" id="cell">
                Plaatje 3
                </div>
                <div class="cell" id="cell">
                Plaatje 4
                </div>
            </div>
            <div class="row">
                <div class="cell" id="cell">
                Plaatje 1
                </div>
                <div class="cell" id="cell">
                Plaatje 2
                </div>
                <div class="cell" id="cell">
                Plaatje 3
                </div>
                <div class="cell" id="cell">
                Plaatje 4
                </div>
            </div>
            <div class="row">
                <div class="cell" id="cell">
                Plaatje 1
                </div>
                <div class="cell" id="cell">
                Plaatje 2
                </div>
                <div class="cell" id="cell">
                Plaatje 3
                </div>
                <div class="cell" id="cell">
                Plaatje 4
                </div>
            </div>
        </div>
</div>

随机平板
普拉特耶斯1号
普拉特耶斯2号
普拉特耶斯3
普拉特耶斯4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
以我的方式,我希望每秒选择一个带有红色边框的随机id=“cell”或其他内容。
如果你们能帮我找到正确的方法,我会非常感激!感谢您的帮助,并为我糟糕的英语(不是我的母语)感到抱歉。

首先,
id
属性是唯一的,这意味着您不能有多个具有相同id的元素

为了达到您想要的效果,您可以将
Math.random()
window.setInterval()结合使用:


.

首先,
id
属性是唯一的,这意味着不能有多个元素具有相同的id

为了达到您想要的效果,您可以将
Math.random()
window.setInterval()结合使用:


.

首先,正如评论中的其他人所述,具有重复的
id
属性是无效的,因此您需要从HTML中删除
id=“cell”

其次,您可以通过获取页面中
.cell
元素的数量,然后在该数量和零之间选择一个随机数来实现这一点。然后可以通过
eq()
方法获得所选元素。最后,您可以使用
setInterval()
函数每秒运行一次代码。试试这个:

function highlight() {
    var $divs = $('.cell').removeClass('highlight');
    var random = Math.floor(Math.random() * $divs.length);
    $divs.eq(random).addClass('highlight');
}
highlight(); // run on load
setInterval(highlight, 1000); // then every 1 second afterward

首先,正如评论中的其他人所述,具有重复的
id
属性是无效的,因此您需要从HTML中删除
id=“cell”

其次,您可以通过获取页面中
.cell
元素的数量,然后在该数量和零之间选择一个随机数来实现这一点。然后可以通过
eq()
方法获得所选元素。最后,您可以使用
setInterval()
函数每秒运行一次代码。试试这个:

function highlight() {
    var $divs = $('.cell').removeClass('highlight');
    var random = Math.floor(Math.random() * $divs.length);
    $divs.eq(random).addClass('highlight');
}
highlight(); // run on load
setInterval(highlight, 1000); // then every 1 second afterward

首先,确保在加载页面时选择了一个随机单元格(在本例中,我添加了一个类“active”——可能是其他类型):

然后,每隔一秒钟,首先从活动单元格中删除活动类,然后将其添加到另一个随机单元格中:

window.setInterval(function(){

    $('.cell.active').removeClass('active');

    var allCells = $('.cell');  
    var index = Math.floor(Math.random() * allCells.length);
    allCells.eq(index).addClass('active');

}, 1000);

这里有一个小问题:

首先,确保在加载页面时选择了一个随机单元格(在本例中,我添加了一个类“active”-可能是其他类型):

然后,每隔一秒钟,首先从活动单元格中删除活动类,然后将其添加到另一个随机单元格中:

window.setInterval(function(){

    $('.cell.active').removeClass('active');

    var allCells = $('.cell');  
    var index = Math.floor(Math.random() * allCells.length);
    allCells.eq(index).addClass('active');

}, 1000);

这里有一个问题:

id=“cell”
100次是不正确的标记。每个页面的ID必须是唯一的。想象有100个人拥有相同的保险号码……抓取
div.cell
的集合,然后您可以使用
math.random
从集合中选择一个单元格。并使用
setTimeout
每隔一天执行一次second@RokoC.Buljan我已经删除了,谢谢@废可乐我会查的,谢谢你的回复
id=“cell”
100次是不正确的标记。每个页面的ID必须是唯一的。想象有100个人拥有相同的保险号码……抓取
div.cell
的集合,然后您可以使用
math.random
从集合中选择一个单元格。并使用
setTimeout
每隔一天执行一次second@RokoC.Buljan我已经删除了,谢谢@废可乐我会查的,谢谢你的回复!